1. 프로젝트에 sqlite3 라이브러리 추가
2. 미리 생성된 .sqlite(또는 .db)파일을 IOS프로젝트의 Resources디렉토리에 위치시킨다.
3. 초기 구동시 DB를 복사한다.
복사방법 :
2. 미리 생성된 .sqlite(또는 .db)파일을 IOS프로젝트의 Resources디렉토리에 위치시킨다.
3. 초기 구동시 DB를 복사한다.
복사방법 :
#pragma mark - #pragma mark Initialize DB (Resource에 있는 sqlite파일을 Document로 복사) void initializeDB() { NSFileManager* fm = [NSFileManager defaultManager]; const char* dbPath = filePath("nih_DB.sqlite"); //[fm removeItemAtPath:[NSString stringWithUTF8String:dbPath] error:NULL]; BOOL fileExists = [fm fileExistsAtPath:[NSString stringWithUTF8String:dbPath]]; if(!fileExists) { // 참조 데이터베이스 파일 경로 NSString* origin = [[NSBundle mainBundle]pathForResource:@"nih_DB" ofType:@"sqlite"]; // Copy DB BOOL copyDB = [fm copyItemAtPath:origin toPath:[NSString stringWithUTF8String:dbPath] error:NULL]; if(!copyDB) { printf("Copy failed!"); } } } #pragma mark - #pragma mark File Path const char* filePath(char* _name) { NSString *name = [NSString stringWithUTF8String:_name]; NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString *path = [paths objectAtIndex:0]; NSString *_filePath = [path stringByAppendingPathComponent:name]; return [_filePath UTF8String]; }
댓글 없음:
댓글 쓰기