首页 >数据库 >mysql教程 >为什么我的 Python 脚本无法更新 MySQL 数据库,即使它显示行已更新?

为什么我的 Python 脚本无法更新 MySQL 数据库,即使它显示行已更新?

DDD
DDD原创
2024-11-03 08:07:30688浏览

Why Does My Python Script Fail to Update a MySQL Database Even Though It Shows Rows Updated?

Python 脚本中的数据库更新问题已解决

在最近的查询中,发现一个旨在更新 MySQL 数据库的 Python 脚本错误地不更新表。经过进一步调查,发现该脚本包含以下代码:

<code class="python">dbb = MySQLdb.connect(host="localhost", 
       user="user", 
       passwd="pass", 
       db="database") 
try:
   curb = dbb.cursor()
   curb.execute ("UPDATE RadioGroups SET CurrentState=1 WHERE RadioID=11")
   print "Row(s) were updated :" +  str(curb.rowcount)
   curb.close()
except MySQLdb.Error, e:
   print "query failed<br/>"
   print e  </code>

尽管声明行已更新,但脚本仍遇到问题。发现这种差异的原因是缺少 dbb.commit()。为了确保使用 Python 脚本执行的更新正确应用于 MySQL 数据库,在使用 curb.execute 之后合并 dbb.commit() 至关重要。此函数将提交您“加载”到 MySQL 服务器中的所有更改,使它们永久保留在数据库中。

通过实现此更改,Python 脚本将按预期成功更新 MySQL 表。

以上是为什么我的 Python 脚本无法更新 MySQL 数据库,即使它显示行已更新?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn