欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

数据库的事务的特性和隔离级别

程序员文章站 2022-09-17 20:01:42
事务的特性和隔离级别1.事务的特性ACID1.原子性 (Atomicity):原子性是指事务是一个不可分割的工作单位,事务中操作 要么发生,要么都不发生2.一致性(Consistency)事务前后数据的完整性必须保持一致3.隔离性(Isolation)事务的隔离性是指多个用户并发访问数据库时,一个用户 的事务不能被其他用户的事务所干扰,多个并发事务之间数据...
事务的特性和隔离级别
	1.事务的特性ACID
		1.原子性 (Atomicity):原子性是指事务是一个不可分割的工作单位,事务中操作
		                                      要么发生,要么都不发生
		2.一致性(Consistency)事务前后数据的完整性必须保持一致
		3.隔离性(Isolation)事务的隔离性是指多个用户并发访问数据库时,一个用户
		                        的事务不能被其他用户的事务所干扰,多个并发事务之间数据相互隔离
		4.持久性(Durability)持久性是指一个事务一旦被提交,它对数据库中的
			                数据的改变是永久性的,接下来即使数据库发生故障也不应该对其任何影响
			                            
	2.并发访问问题-----由隔离性引起
		如果不考虑隔离性,事务存在3种并发访问问题
			1.脏读  B事务读取到了A事务尚未提交的数据
			2.不可重复读: 一个事务中两次读取的数据的内容不一致
			3.幻读/虚读:多次事务读取的条数的数量是一致
	3.	事务的隔离级别
		1.read uncommitted :读取尚未提交的数据:那个问题都不能解决
		2.read committed :读取已经提交的数据:可以解决脏读-----oracle默认
		3.repeatable read: 重复读取:可以解决脏读和不可重复读------mysql默认
		4.serializable :串行化 :可以解决脏读 不可重复读 和虚读-----相当于锁表(效率很低)
			                            			                            

本文地址:https://blog.csdn.net/kaszxc/article/details/109480786