SQLite清算数据库问题

时间:2010-12-26 05:18:23

标签: iphone objective-c sqlite

我正在尝试在iPhone上的SQLite数据库中更新数据。我想放弃并重新创建表(它不大),或者只是截断它,但我似乎无法做到这一点。

正在运行

char *errorMsg;
    NSString *truncSQL = @"TRUNCATE TABLE GAMES;";
    if (sqlite3_exec(database, [truncSQL UTF8String], NULL, NULL, &errorMsg) != SQLITE_OK){
        NSLog(@"Error: %s", errorMsg);
        NSLog(truncSQL);
    }

给我一​​个数据库锁定错误。数据库中不应存在任何活动读取或任何内容。我怎么做到这一点?

谢谢!

2 个答案:

答案 0 :(得分:1)

如果文件[DATABASE].journal存在,有时旧版本的SQLite会出现“数据库锁定”错误。如果您确定没有任何内容正在访问数据库,请尝试删除该文件。

答案 1 :(得分:0)

糟糕,那是愚蠢的。

想出来了!

意外错过了sqlite3_finalize();声明在某个地方!