sqlite Error: database is locked

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

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


sqlite Error: database is locked_第1张图片

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


sqlite Error: database is locked_第2张图片

过程:

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

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


sqlite Error: database is locked_第3张图片

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

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

你可能感兴趣的:(sqlite Error: database is locked)