我有一个 sqlite 问题。
上面我的代码:
-(NSString *) filePath {
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDir = [paths objectAtIndex:0];
NSString *dbPath = [documentsDir stringByAppendingPathComponent:@"Yok_Artik.sqlite"];
return dbPath;
}
-(void) openDB {
if (sqlite3_open([[self filePath] UTF8String], &db) == SQLITE_OK) {
const char *sqlStatement = "SELECT content, image FROM yok_artik ORDER BY RANDOM() LIMIT 1;";
sqlite3_stmt *compiledStatement;
if (sqlite3_prepare_v2(db, sqlStatement, -1, &compiledStatement, NULL) == SQLITE_OK) {
if (sqlite3_step(compiledStatement) == SQLITE_ROW) {
NSString *myContent = [NSString stringWithUTF8String:(char *)sqlite3_column_text(compiledStatement, 0)];
yaContent.text = myContent;
} else {
NSLog(@"Error (sqlite3_step): %s", sqlite3_errmsg(db));
}
} else {
NSLog(@"Error (sqlite3_prepare): %s", sqlite3_errmsg(db));
}
} else {
NSLog(@"Error (sqlite3_open): %s", sqlite3_errmsg(db));
}
}
我在 sqlite3_prepare_v2 命令中遇到错误
错误信息: 错误(sqlite3_prepare):没有这样的表:yok_artik
如何解决这个问题?
顺便说一句,sqlite3_open 工作正常。
最佳答案
我的错误是文件路径。我改变它。
关于ios - sqlite3_prepare_v2没有这样的表错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7540129/