Python RDS 更新脚本实际上没有更新

问题描述 投票:0回答:1

我已经主要用 PHP 构建了我的代码库,并且看到了我可以用 Python 组合起来的东西。我想要解决的一个关键挑战是能够通过 AWS RDS 读取和写入我的 MySQL 数据库。我玩弄了一个使用 pymysql 的脚本,并认为我已经解决了我的问题。我运行一个简短的更新脚本:

usql1 = "UPDATE table_name SET STATE='Georgia', SCORE2='1' WHERE ID=1"
response1 = cursor.execute(usql1)

当我在我的 Python 代码中打印结果时,我看到状态更改为 Georgia,并且

SCORE2
字段更改为
1
。然而,当我在 MySQL Workbench 中刷新表时,什么都没有改变。

为什么当我在我的 Python 脚本中而不是在底层数据库中检索和打印表时,结果会发生变化?这与 pymysql 启动游标的方式有关吗?

谢谢!

python mysql amazon-web-services amazon-rds pymysql
1个回答
0
投票

当您执行更新时,MySQL 正在隐式启动一个事务。您需要在执行更新后调用

connection.commit()
来提交此事务,以防止事务在您断开连接时自动回滚。

© www.soinside.com 2019 - 2024. All rights reserved.