我有一个需要更新mysql数据库的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

该脚本将打印Row(s) were updated :,其正确行数的RadioID为11。如果将RadioID更改为表中不存在的另一个数字,它将显示Row(s) were updated :0。但是,数据库实际上并没有更新。 CurrentState字段保持不变。如果我将SQL语句复制并粘贴到PHPMyAdmin中,则可以正常工作。

最佳答案

使用

dbb.commit()


curb.execute ("UPDATE RadioGroups SET CurrentState=1 WHERE RadioID=11")
提交您“加载”到mysql服务器的所有更改

10-05 19:57