python,sqlite错误? db被锁定了吗?但它不是吗?
发布时间:2020-12-20 11:10:34 所属栏目:Python 来源:网络整理
导读:我的sqlite3数据库中出现“数据库表被锁定”错误.我的脚本是单线程的,没有其他应用程序正在使用该程序(我确实在“SQLite Database Browser.exe”中打开了一次).我复制了文件,del原始(成功)并重命名了副本,所以我知道没有进程锁定它当我运行我的脚本时,表B中
我的sqlite3数据库中出现“数据库表被锁定”错误.我的脚本是单线程的,没有其他应用程序正在使用该程序(我确实在“SQLite
Database Browser.exe”中打开了一次).我复制了文件,del原始(成功)并重命名了副本,所以我知道没有进程锁定它当我运行我的脚本时,表B中的所有内容都无法写入,看起来表A很好.发生了什么?
-编辑- -edit2- 其他人发布,所以我不妨更新.我认为问题是我试图使用命令/光标进行声明. 解决方法
我之前也遇到过这个问题.当光标和连接打开然后程序崩溃然后才能正确关闭它时,通常会发生这种情况.在某些情况下,可以使用以下函数来确保数据库已解锁,即使它未事先正确提交和关闭也是如此:
from sqlite3 import dbapi2 as sqlite def unlock_db(db_filename): """Replace db_filename with the name of the SQLite database.""" connection = sqlite.connect(db_filename) connection.commit() connection.close() (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |