python-3.x - 如何更新,然后用 Python 和 DBUtils PersistentDB 选择更新的数据?
问题描述
有两个 Python 脚本。脚本 A 不断读取数据库中的记录,然后发送消息。脚本 B 不断查找数据并插入数据库。它们都继续运行而不会被终止。
如果数据库中有未处理的记录,当脚本A启动时,脚本A可以看到这些记录,并正确处理。脚本 A 现在空闲。一段时间后,脚本 B 插入一些新记录。但是,脚本 A 看不到这些新添加的记录。
在脚本 B 中,插入记录后,我有 connection.commit()。记录在数据库中。
脚本 A 在以下情况下无法正常工作:
persist = PersistentDB(pymysql, host=DB_HOST, port=DB_PORT, user=DB_USERNAME, passwd=DB_PASSWORD, db=DB_DATABASE, charset='utf8mb4')
while True:
connection = persist.connection()
cursor = connection.cursor()
cursor.exec("SELECT...")
脚本 A 在以下情况下正常工作:
while True:
persist = PersistentDB(pymysql, host=DB_HOST, port=DB_PORT, user=DB_USERNAME, passwd=DB_PASSWORD, db=DB_DATABASE, charset='utf8mb4')
connection = persist.connection()
cursor = connection.cursor()
cursor.exec("SELECT...")
我真的应该以这种方式使用 PersistentDB 吗?每次我声明它似乎都会覆盖持久连接池。请告诉我正确的方法是什么。
PS 使用 Python 3、pymysql 和 DBUtils 连接到 MySQL 8
解决方案
推荐阅读
- laravel - 如何使用laravel从文件夹中删除mp3文件
- java - Java将字符串转换为日期问题
- forms - 字段选择选项给出无效选择错误
- css - django这不起作用..图像未显示在页面中
- firebase - 将 Quasar 应用程序部署到 Firebase 时出现空白页面
- mysql - 有多个键列时如何形成合并查询?
- python-3.x - 如何使用 tkinter.Label 更改文本颜色
- git - 我们可以在不克隆 repo 的情况下获得最后的提交消息吗?
- python - 使用 Python 请求登录 Intuit Qucikbooks
- java - 如何在Android中制作编码字符串?