skylark 使用sqlite3数据库时,提示SQLite objects created in a thread can only be used in that same thread

报错内容如下:

ProgrammingError: SQLite objects created in a thread can only be used in that same thread.The object was created in thread id 4460 and this is thread id 7608

网上的内容都是说要在sqlite3链接的时候,就指定check_same_threadFalse,但是skylark作为sqlite3的上层,经过研究,只能从源码中去修改:
打开/Lib/site-packages/skylark.py文件,大概在第206行,修改为:

return self.module.connect(db, check_same_thread=False)

在这里是底层的api连接数据库的地方。

你可能感兴趣的:(python,数据库)