Python - 事务操作

Python - 事务操作 首页 / Python3入门教程 / Python - 事务操作

事务确保数据库的数据一致性。无涯教程必须确保执行数据库操作时多个应用程序一定不能修改记录。事务具有以下属性。

  1. 原子性  - 事务完成或什么都没有发生。如果一个事务包含4个查询,则必须执行所有这些查询,或者都不执行任何查询。
  2. 一致性  - 在事务开始之前数据库必须是一致的,并且在事务完成之后数据库也必须是一致的。
  3. 隔离性  - 交易的中间结果在 当前交易。
  4. 持久性  - 交易一旦提交,其影响将持续存在, 即使在系统出现故障后。

commit()方法

Python提供了commit()方法,以确保对数据库进行提交操作

下面给出了使用commit()方法的语法。

conn.commit() #conn 是连接对象

在调用commit()之前,所有修改数据库记录的操作都不会发生。

rollback()方法

rollback()方法用于还原对数据库所做的更改。从某种意义上说,此方法很有用,如果在数据库操作期间发生某些错误,可以回滚该事务以维护数据库的一致性。

下面给出了使用rollback()的语法。

Conn.rollback()

断开连接

完成有关数据库的所有操作后,需要关闭数据库连接。 Python提供了close()方法。下面给出了使用close()方法的语法。

conn.close() 

在以下示例中,将删除在CS部门工作的所有员工。

无涯教程网

链接:https://www.learnfk.comhttps://www.learnfk.com/python3/python-mysql-performing-transactions.html

来源:LearnFk无涯教程网

import mysql.connector

#创建连接对象 
myconn = mysql.connector.connect(host = "localhost", user = "root",passwd = "Learnfk",database = "PythonDB")

#创建光标对象
cur = myconn.cursor()

try:
    cur.execute("delete from Employee where Dept_id = 201")
    myconn.commit()
    print("Deleted !")
except:
    print("Can't delete !")
    myconn.rollback()

myconn.close()

输出

Deleted !

祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)

技术教程推荐

许式伟的架构课 -〔许式伟〕

后端技术面试 38 讲 -〔李智慧〕

Java业务开发常见错误100例 -〔朱晔〕

Serverless入门课 -〔蒲松洋(秦粤)〕

软件设计之美 -〔郑晔〕

乔新亮的CTO成长复盘 -〔乔新亮〕

超级访谈:对话汤峥嵘 -〔汤峥嵘〕

Kubernetes入门实战课 -〔罗剑锋〕

结构执行力 -〔李忠秋〕

好记忆不如烂笔头。留下您的足迹吧 :)