sqlite Error: database is locked

笔者写这篇文章只是为了方便大家排错

今天在使用sqlite 利用事务来操作事件时,

《sqlite Error: database is locked》

之后我们检查数据库操作并没成功所以直接在sqlite 里运行SQL语句

《sqlite Error: database is locked》

过程:

之后我们的任何的操作,都变成了 database is locked 笔者一头扎进这个错误,上网寻找各种说法,就是库级锁,不能同时操作大概这样的说法.接着深层的研究一下是因为这个表被锁了,原因是这个事务在开始以后没有正确执行,可能导致一直都是错误的没法释放,即使关闭NAV重启都没用,笔者重新创建数据库文件和表同样的操作依然出现这个错误

原因:请教了大神,检查事务操作的语句

《sqlite Error: database is locked》

原来粗心的笔者 把commit 写成了 commite ,导致了线程错误内存无法被正确的释放所以数据库直接被锁

解决:正确的代码再次执行,就可以解决以上问题(虽然出于粗心造成问题,也总结出了sqlite的一些机制)

    原文作者:红成魔
    原文地址: https://www.jianshu.com/p/ac80d860670e
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞