Objective-C SQLite - SQLITE_BUSY

时间:2011-08-11 13:32:02

标签: objective-c sqlite

我有一个数据库层,当我在AppDelegate上使用它时,它可以很好地工作。

当我在ViewController中获取该图层时,它返回错误SQLITE_BUSY,我的数据库被锁定。

我使用args“BEGIN EXCLUSIVE TRANSACTION”运行sqlite_exec,然后在sqlite_step(STATEMENT)之后运行sqlite_exec并使用args“COMMIT TRANSACTION”

提前感谢您的帮助。

  • 我搜索了类似于我的问题,但没有一个解决方案解决了我的问题。

1 个答案:

答案 0 :(得分:1)

我正在管理现有代码,所以我无法切换。但是,如果你的wana切换仍然在sql fmdb(https://github.com/ccgus/fmdb)工作是一个很好的替代。

我通过在使用db之后添加以下行来修复我的问题。你永远不应该忘记关闭连接。

          sqlite3_finalize(statement);
          sqlite3_close(contactDB);