python事务是什么?四大属性助你了解事务

乌拉乌拉~
乌拉乌拉~ 原创
2018-08-21 13:54:05 3044浏览

在这篇文章之中我们来了解一下关于pythonMYSQL事务,对于刚刚接触到python这一编程语言的朋友来说,可能对于python事务控制相关方面的了解比较少,不明白什么是python事务,所以在这篇文章之中我们就来聊聊pythonMYSQL事务控制的相关知识。

什么是事务

事务(Transaction)是并发控制的单位,是用户定义的一个操作序列。这些操作要么都做,要么都不做,是一个不可分割的工作单位。通过事务,SQL Server能将逻辑相关的一组操作绑定在一起,以便服务器保持数据的完整性。事务应用的一个广泛例子就是银行中的存取款业务。

事务属性

事务机制可以确保数据一致性。

事务应该具有4个属性:原子性、一致性、隔离性、持久性。这四个属性通常称为ACID特性。

1.原子性(atomicity)。一个事务是一个不可分割的工作单位,事务中包括的诸操作要么都做,要么都不做。

2.一致性(consistency)。事务必须是使数据库从一个一致性状态变到另一个一致性状态。一致性与原子性是密切相关的。

3.隔离性(isolation)。一个事务的执行不能被其他事务干扰。即一个事务内部的操作及使用的数据对并发的其他事务是隔离的,并发执行的各个事务之间不能互相干扰。

4.持久性(durability)。持续性也称永久性(permanence),指一个事务一旦提交,它对数据库中数据的改变就应该是永久性的。接下来的其他操作或故障不应该对其有任何影响。

Python DB API 2.0 的事务提供了两个方法 commit 或 rollback。

实例解析

# SQL删除记录语句sql = "DELETE FROM EMPLOYEE WHERE AGE > '%d'" % (20)try:
   # 执行SQL语句
   cursor.execute(sql)
   # 向数据库提交
   db.commit()except:
   # 发生错误时回滚
   db.rollback()

对于支持事务的数据库, 在Python数据库编程中,当游标建立之时,就自动开始了一个隐形的数据库事务。

commit()方法游标的所有更新操作,rollback()方法回滚当前游标的所有操作。每一个方法都开始了一个新的事务。

以上就是本篇文章所讲述的所有内容,这篇文章主要介绍了pythonMYSQL事务的相关知识,希望你能借助资料从而理解上述所说的内容。希望我在这片文章所讲述的内容能够对你有所帮助,让你学习python更加轻松。

更多相关知识,请访问php中文网Python教程栏目。

以上就是python事务是什么?四大属性助你了解事务的详细内容,更多请关注php中文网其它相关文章!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。