Python 中的MySQL 更新:解決失敗的更新
在Python 腳本中執行MySQL 更新查詢時,可能會遇到更新指令的問題報告執行成功,但表格不變。為了糾正這個問題,理解 MySQL 中事務和提交的概念至關重要。
事務是作為單一單元執行的一組操作。在 MySQL 中,交易在執行更新查詢時開始,並在提交交易時結束。如果事務未提交,則在該事務期間所做的任何更改都不是永久性的,並將被丟棄。
為了解決問題中描述的問題,缺少的步驟是在更新查詢完成後發出提交命令被執行。此提交命令通知 MySQL 伺服器應將交易中所做的所有變更永久保存到資料庫中。
以下程式碼片段示範了提交指令的用法:
import MySQLdb 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") dbb.commit() # Commit the transaction print("Row(s) were updated :" + str(curb.rowcount)) curb.close() except MySQLdb.Error as e: print("Query failed") print(e)
透過包含dbb.commit() 語句,交易中所做的所有更改,包括對RadioGroups 表的更新,都將永久保存到資料庫中。
以上是為什麼我的 Python 中的 MySQL 更新沒有生效?的詳細內容。更多資訊請關注PHP中文網其他相關文章!