首頁 >資料庫 >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