sqliteデータベースからデータを読み取り、iOSアプリのテーブルビューに表示しようとしています。しかし、何らかの理由でsqliteデータベースを開くことができず、アプリがクラッシュして「データベースを開けませんでした」というメッセージが表示されます。
Firefox sqlite managerを使用してデータベースを作成し、ファイルをXcodeプロジェクトにコピーしました。
これが私のコードです-
-(NSString *)dataFilePath{
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory , NSUserDomainMask, YES);
NSString *documentsDir = [paths objectAtIndex:0];
return [documentsDir stringByAppendingPathComponent:kFilename];
}
viewDidLoad内でsqlite3_open_v2コマンドを使用してデータベースを開こうとしています
sqlite3 *database;
if (sqlite3_open_v2([[self dataFilePath] UTF8String], &database, SQLITE_OPEN_READWRITE, NULL) != SQLITE_OK) {
sqlite3_close(database); // not sure you need to close if the open failed
NSAssert(0, @"Failed to open database");
}