You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python操作AWS RDS更新脚本未生效,查询显示修改但数据库无变化

问题原因与解决方法
  • 核心原因:pymysql默认关闭自动提交事务(autocommit=False),执行UPDATE语句后,修改仅在当前Python数据库连接的事务内可见,未同步到底层数据库,所以Workbench(独立的数据库连接)看不到变化。

  • 解决方法:

    1. 手动提交事务:执行完UPDATE后调用连接对象的commit()方法,将修改同步到数据库
      usql1 = "UPDATE table_name SET STATE='Georgia', SCORE2='1' WHERE ID=1"
      response1 = cursor.execute(usql1)
      # 提交事务
      conn.commit()
      
    2. 开启自动提交:初始化数据库连接时设置autocommit=True,后续执行修改语句会自动提交
      import pymysql
      # 初始化连接时开启自动提交
      conn = pymysql.connect(
          host='你的RDS地址',
          user='数据库用户名',
          password='数据库密码',
          database='目标数据库名',
          autocommit=True
      )
      cursor = conn.cursor()
      
  • 和游标初始化的关系:通常与游标类型无关。除非你使用了SSCursor这类特殊的服务器端游标,但这类场景下核心问题依然是事务未提交,而非游标本身。

内容的提问来源于stack exchange,提问作者user1120540

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.24 00:32:07