事务具有很严格的定义,必须同时满足4个特征
原子性、一致性、隔离性、持久性,也就是人们常说的ACID标准
原子性——Atomicity
原子性,是指一个事务必须被视为,一个不可分割的最小工作单元,只有事务中所有的数据库操作都执行成功,才算整个事务执行成功
事务中,如果有任何一个sql语句执行失败,已经执行成功的sql语句,也必须撤销,数据库的状态退回到执行事务之前的状态
一致性——Consistency
一致性,是指事务将数据库,从一种状态转变为下一种一致的状态
比如,在表中有一个字段为姓名,具有唯一约束,即姓名不能重复,如果一个事务对姓名进行了修改,使姓名变得不唯一了,就破坏了事务的一致性要求
如果,事务中的某个动作失败了,系统可以自动撤销事务,返回初始化的状态
隔离性——Isolation
隔离性,又称为并发控制、可串行化、锁等
当多个用户并发访问数据库时,数据库为每一个用户开启的事务,不能被其他事务的操作数据所干扰,多个并发事务直接要相互隔离
持久性——Durability
持久性,是指事务一旦提交,所做的修改机会永久保存到数据库中,即使,数据库发生故障也不应该对其有任何影响
注意,事务的持久性不能做到100%的持久,只能从事务本身的角度来保证持久性,一些外部原因可能导致数据库发生故障,比如,硬盘损坏,那么所有提交的数据可能都会丢失
总结
以上是编程之家为你收集整理的MySQL事务的特性全部内容,希望文章能够帮你解决MySQL事务的特性所遇到的程序开发问题。
如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。