我一直在尝试使用PyMysql,到目前为止,我所做的一切都很有效(Select/insert),但当我尝试更新它时,它只是不起作用,没有错误,什么也没有,只是什么也没有做。
import pymysql
connection = pymysql.connect(...)
cursor = connection.cursor()
cursor.execute("UPDATE Users SET IsConnected='1' WHERE Username='test'")
cursor.close()
connection.close()
是的,我已经仔细检查了Users、IsConnected和Username是否都是正确的,并且测试确实存在(选择works on it)
我这里有什么问题?
当您执行更新时,MySQL隐式地启动了一个事务。您需要在执行更新后通过调用
connection.commit()
来提交此事务,以防止断开连接时事务自动回滚。MySQL(至少在对表使用InnoDB引擎时)支持transactions,它允许您运行一系列update/insert语句,然后将它们作为一个操作同时有效地提交,或者回滚以使它们不被应用。如果未显式提交事务,则在关闭与数据库的连接时,该事务将自动回滚。
相关问题 更多 >
编程相关推荐