数据库事务
1、概念
执行批量操作时,这些操作作为一个整体,要么全部成功,要么全部失败。如银行转账,己方扣钱、对方加钱,这两个操作是一个整体,要么全部成功,要么全部失败。
2、四大特性ACID
- 原子性(Atomicity)
- 事务是一个不可再分割的工作单位,事务中的操作要么都发生,要么都不发生
- 一致性(Consistency)
- 事务前后,数据关系一致、业务逻辑一致
- 隔离性(Isolation)
- 一个事务所做的修改在最终提交以前,对其他事务是不可见的
- 持久性(Duration)
- 一旦事务提交,则更改是永久的
3、隔离级别
3.1 并发事务带来的问题
- 脏读:一个事务读取了另一个事务未提交的数据,而这个数据是有可能回滚的;