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

该rollback()方法是 Python 中用于进行数据库事务的各种方法之一。

在这里,我们将讨论该rollback()方法。

该rollback()方法用于恢复对数据库所做的最后更改或提交。如果出现用户对数据库更改不满意的情况,或者如果事务失败,则rollback()操作该方法以将数据库恢复到其提交更改之前的原始状态。这是一个非常重要的方法,因为它有助于在任何事务失败的情况下维护数据库的完整性。

语法

db.rollback()

db 指的是数据库连接对象。

下面给出了一个示例,展示了rollback()在事务失败的情况下如何恢复更改。

rollback()在python中使用MySQL处理表中失败事务的步骤

  • 导入 MySQL 连接器

  • 使用连接器建立连接 connect()

  • 使用cursor()方法创建游标对象

  • 尝试执行更新查询并提交更改

  • 如果事务失败,则回滚事务

  • 关闭连接

示例

下面的代码尝试更新 STUDENT 表中名为 Inder 的学生的 AGE。如果事务成功,则进行更新,否则事务将回滚并且数据库恢复到其先前状态。

import mysql.connector
frommysql.connectorimport Error
frommysql.connectorimport 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)

   # 提交对数据库的更改
   db.commit()

   # 更新成功消息
   print("数据库更新!")

except mysql.connector.Error as error :
   # 将失败消息更新为错误
   print("Database Update Failed !: {}".format(error))

   # 由于异常而恢复更改
   db.rollback()

# 与数据库断开连接
db.close()
输出结果

如果交易成功

Database Updated!

如果交易失败

Database Update Failed!