【踩坑】Python3操作Sqlite3报错

前言

Python3操作Sqlite3报错:sqlite3.OperationalError: database is locked

原因

  • Sqlite只支持单线程操作,所以不能多个程序同时操作一个.db文件
  • 如果没有用多个程序操作一个.db文件,可能是忘记关闭数据库连接了

解决问题

  • 如果是多个程序操作一个.db文件,可以等待其他程序操作结束再用Python3操作Sqlite3
  • 如果没有用多个程序操作一个.db文件,记得使用结束后关闭连接
1
2
3
4
# 关闭游标
cur.close()
# 关闭连接
conn.close()

完成

参考文献

CSDN——小仙女的小跟班_fairy