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+ 次查看

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告