tornado 中使用 tormysql 读取数据有时读到的数据是之前查询的数据?

2020-04-26 14:54:00 +08:00
 SystemLight

我在全局使用了一个 tormysql 的 pool 对象,每个请求都从中生成一个数据库连接对象 Connection,但是我发现有的时候请求会不是当前提交过的数据,如数据库里面已经更新了新数据,但是查询的仍然是之前的数据,而且这些出现的数据不固定,有时是正常的有时是之前查过的数据

1606 次点击
所在节点    Python
5 条回复
baocaixiong
2020-04-26 20:06:21 +08:00
没 commit 吧
hushao
2020-04-26 21:06:46 +08:00
描述的比较模糊,针对其他地方写入的,只读的有没有这种情况?
sujin190
2020-04-27 14:07:33 +08:00
Connection 的默认连接参数和 pymysql 是一样的,autocommit 默认为 False,如果数据库全局配置 autocommit 也为 off 的话,是需要手动 commit 才能查询到新数据的啊
SystemLight
2020-04-28 12:56:58 +08:00
@sujin190 已解决,查到您以前的评论说过这个问题
SystemLight
2020-04-28 12:58:21 +08:00
@baocaixiong 还真是,不过我真的第一次发现查询也需要 commit,原来以为只要插入 commit 就可以了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/666276

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX