SQLite异常:library routine called out of sequence
最近公司项目中使用sqlite时候出现了library routine called out of sequence错误,查找了很久都没有什么资料,后台在sqlite官网上找到解释,翻译之后大致如下:
1. 调用API所用到的指针,第一种情况是没有从sqlite3_open()或者是sqlite3_open16()获得,第二种情况是sqlite3_close()函数已经将数据库关闭了。我是出现的就是这一种情况。
2. 两个或者更多的线程同时访问该数据库。对于这样的问题,可以通过加上锁进行解决。
3. sqlite3_step()所用到的变量statement指针,第一种情况是该指针不是从sqlite3_prepare()或者是sqlite3_open16()获得的,第二种情况是该指针已经被销毁或者被释放。这个和1中的情况是一样的,不同的是使用这种指针的函数,两者可以和为一种情况。
4. 试图将values绑定到一个正在运行的statement上。