SQL未显示更新的表

时间:2018-03-26 11:55:35

标签: python mysql database

我正在使用不断更新的MySQL数据库(添加新值并删除旧值)。

从客户端计算机我使用python MySQL客户端连接到数据库,第一次连接时我可以在当前点获取数据但是当我再次进行查询时,检索到的数据不会发生变化数据库已更新。

初始化代码:

self.idb=MySQLdb.connect(host=xxx,user=xxx,passwd=xxx)
    self.ic=self.idb.cursor()
    self.ic.execute('SHOW DATABASES')        
    options=sorted([x[0] for x in self.ic.fetchall() if x[0].startswith('xxx')],reverse=True)
    self.ic.execute('USE {}'.format(options[0]))

查询:

self.dbi=pd.read_sql('SELECT * FROM RawData', con=self.idb)

从服务器我可以验证数据是否在不断更新。

是否可以检索更新的数据而无需关闭数据库?

1 个答案:

答案 0 :(得分:0)

在默认隔离级别可重复读取中,您需要在事务中创建 COMMIT ,以便其他用户可以看到您所做的更改。是的,您可以在不关闭数据库的情况下进行 COMMIT 。你可以使用:

self.ic.commit()

您应该阅读Mysql Isolation Levels以获取有关它们如何工作以及如何更改它们的更多信息。