我在用Sqlite做数据库开发的时候,在前几次做数据库操作的时候是正常的,但频繁操作几次之后会报database locked的问题,请问有没有遇到过类似问题的朋友,该如何解决呢?
------解决方案--------------------------------------------------------
在修改删除时lock代码
------解决方案--------------------------------------------------------
是多线程访问吗?如果是的,那你得修改你的代码了。
------解决方案--------------------------------------------------------
sqlite3_busy_timeout()
调用该函数设置等待超时间.
------解决方案--------------------------------------------------------
SQLITE对数据库文件是文件级锁定,线程访问可能会出问题。
------解决方案--------------------------------------------------------
开始事务的时候,改为 commit exclusive.
------解决方案--------------------------------------------------------
sqlite是文件级的锁,同一时间只允许一个进程对数据库进行写操作.
所以对数据库的写操作都放在同一个进程.