我有一个脚本,该脚本利用apscheduler模块以设定的间隔运行某些脚本。这些脚本用于各种目的,使我的生活更轻松,我还使用一个简单的SQLite数据库来保存信息,这就是我查看数据是否已更改的方式,如果有的话,它将使用Telegram的API向我发送消息。这是脚本如何工作的基本摘要

问题描述 投票:0回答:0
Function1()

段段段插入

cur = conn.cursor()
函数,因为否则我会遇到有关在其他线程中使用光标的错误。但是现在我得到了
compareChanges()

。某些功能在同一时间运行,因此脚本可能会尝试同时更新多个值(尽管它永远不会同时更新同一行)。如何修复我的代码以不在交易中开始交易?

    

这里的问题是您在两个功能中都重复使用相同的连接。连接不安全地在多个线程中使用,并且您故意与

cannot start a transaction within a transaction
进行检查。您应该每次分别连接到函数中的数据库:
check_same_thread=False
    

python sqlite transactions apscheduler
最新问题
© www.soinside.com 2019 - 2025. All rights reserved.