我的iPhone应用程序有一个这样的代码来删除一个表并重新创建它。
const char *sql = [@"DROP TABLE mytable" cStringUsingEncoding:NSUTF8StringEncoding];
sqlite3_stmt *statement;
if (sqlite3_prepare_v2(database, sql, -1, &statement, NULL) == SQLITE_OK) {
sqlite3_step(statement);
NSLog(@"dropped.");
} else {
NSLog(@"error. %s", sqlite3_errmsg(database));
}
sqlite3_finalize(statement);
// ...
// DO SQL LIKE `CREATE TABLE mytable` here.
在大多数情况下,此代码有效。
但是错误报告说,在第一个SQL(DROP TABLE mutable
)运行后,表仍然存在,在某些极少数情况下没有错误。我从来没有在我的设备上遇到过这种情况。
有没有人经历过这个?或任何信息?