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

pythonserver side programmingprogramming

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

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

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

语法

db.rollback()

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

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

在 python 中使用 MySQL 回滚()表中失败事务的步骤

  • 导入 MySQL 连接器

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

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

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

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

  • 关闭连接

示例

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

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)

   # 将更改提交到数据库
   db.commit()

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

except mysql.connector.Error as error :
   # 更新失败消息作为错误
   print("数据库更新失败!:{}".format(error))

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

# 断开与数据库的连接
db.close()

输出

如果事务成功

数据库已更新!

如果交易失败

数据库更新失败!

相关文章