事务特征(ACID)
- 原子性(Atomicity)指事务是一个不可分割的整体,其中的操作要么全执行或全不执行
- 一致性(Consistency)事务前后数据的完整性必须保持一致
- 隔离性(Isolation)事务的隔离性是多个用户并发访问数据库时,数据库为每一个用户开启的事务,不能被其他事务的操作数据所干扰,多个并发事务之间要相互隔离
- 持久性(Durability)持久性是指一个事务一旦被提交,它对数据库中数据的改变就是永久性的,接下来即使数据库发生故障也不应该对其有任何影响.
事务的隔离级
-
脏读:允许读取未提交的信息
-
原因:Read uncommitted
解决方案: (表级读锁)
-
-
不可重复读:读取过程中单个数据发生了变化
- 解决方案: Repeatable read (行级写锁)
-
幻读:读取过程中数据条目发生了变化
- 解决方案: Serializable(表级写锁)