事务的特性和隔离级别(概念性问题面试)
**1.事务的特性**
1)原子性(Atomicity )原子性是指事务是个不可分割的工作单位,事务中的操作要么都发生,要么都不发生用里.电1 _
2)一致性( Consistency )事务前后数据的完整性必须保持致。
3 )隔离性( isoiation )事务的隔离性是指多个用户并发访问数据库时,个用户的事务不能被其它用户的事务所干扰,多个并发事务之间数据要相互隔离。
4)持久性( Durability )持久性是指一个事务-旦被提交,它对数据库中数据的改变
就是永久性的,接下来即使数据库发生故则也不成该对其有任何那响。2.并发访问问题--由隔离性引起
**如果不考虑隔离性,事务存在3中并发访问问题。**
1)脏读: B事务读取到了A事务尚未提交的数据 -----要求B事务要读取A事务提交的数据
2)不可重复读:一个事务中两次读取的数据的内容不致---- 要求的是一个事务中多次读取时数据是致的 --- unpdate
3)幻读/虚读:一个事务中两次读取的数据的数量不-致---- 要求在一个事务多次读取的数据的数量是一致的--insert delete3.事务的隔离级别
1) read uncomitted:读取尚未提交的数据:哪个问题都不能解决
2) read cmmited :读取已经提交的数据;可以解决脏读一orade默认的
3) epetble read重读读取 :可以解决脏楼和不可重复读-mysql数据库默认的隔离级别
4) sializable :串行化:可以解决脏读不可重复读和虚读相当于锁表注意:
查看mysql数据库默认的隔高级别: sele @@ sotionea1 celect eetx. isolat ion;