Python MySQL 中的 rollback() 方法是什麼?


rollback() 方法是 Python 中用於執行資料庫事務的多種方法之一。

在這裡,我們將討論 rollback() 方法。

rollback() 方法用於撤銷對資料庫進行的上次更改或提交。如果出現使用者對資料庫更改不滿意或事務失敗的情況,則操作 rollback() 方法將資料庫恢復到提交更改之前的原始狀態。這是一種非常重要的方法,因為它有助於在任何事務失敗的情況下維護資料庫的完整性。

語法

db.rollback()

db 指的是資料庫連線物件。

下面是一個示例,演示瞭如何使用 rollback() 在事務失敗時撤銷更改。

使用 Python 中的 MySQL 在表中回滾失敗事務的步驟

  • 匯入 MySQL connector

  • 使用 connect() 建立與聯結器的連線

  • 使用 cursor() 方法建立遊標物件

  • 嘗試執行更新查詢並提交更改

  • 如果事務失敗,則回滾事務

  • 關閉連線

示例

以下程式碼嘗試更新 STUDENT 表中名為 Inder 的學生的 AGE。如果事務成功,則進行更新,否則回滾事務並將資料庫恢復到其先前狀態。

import mysql.connector
from mysql.connector import Error
from mysql.connector import errorcode

try:
   db = mysql.connector.connect(
      host ='localhost',
      database ='database_name',
      user ='user_name'
      password='your_password',
   )

   cs = db.cursor()
   query ="UPDATE STUDENT SET AGE = 23 WHERE Name ='Inder'"
   cs.execute(query)

   # commit changes to the database
   db.commit()

   # update successful message
   print("Database Updated !")

except mysql.connector.Error as error :
   # update failed message as an error
   print("Database Update Failed !: {}".format(error))

   # reverting changes because of exception
   db.rollback()

# Disconnecting from the database
db.close()

輸出

如果事務成功

Database Updated!

如果事務失敗

Database Update Failed!

更新於: 2021-06-10

4K+ 次檢視

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.