我有一个python程序(使用pymysql)连接到mysql数据库。在我的程序中,我有一个循环来检查我的一个表的长度。
sql = "SELECT COUNT(*) FROM resourciter.views"
sqlCursor.execute(sql)
viewPointCount = sqlCursor.fetchone()[0]
print("(%s data points)" % str(viewPointCount))
但是,每次运行时,它都返回相同的值,即使我知道它应该改变
如。
(46 data points)
(46 data points)
(46 data points)
(46 data points)
...
我尝试在每个循环上关闭和重新打开sql连接,但突然之间它都正常工作了
如。
(46 data points)
(47 data points)
(48 data points)
(49 data points)
...
显然,这是一种非常糟糕的做法,我确信它可以在不关闭和重新打开连接的情况下工作。
sqlcursor中是否有某种缓存或需要清除的内容?
1条答案
按热度按时间kxxlusnw1#
在mysql 8之前的版本中,您可以
从查询中获取未缓存的结果。
在版本8及更高版本中不需要;已删除查询缓存功能。