- 脏读是指一个事务读取了另一个事务未提交的数据,如果后者回滚,则前者读取的数据就是错误的。例如,A事务向账户X转账100元,B事务查询账户X的余额,此时如果A事务还没有提交,B事务就会读取到错误的余额。
- 不可重复读是指一个事务在两次查询之间,(同一条)数据发生了变化,导致两次结果不一致. 通常是由于另一个事务对数据进行了更新操作。例如,A事务查询某个商品的价格,B事务修改了该商品的价格并提交,然后A事务再次查询该商品的价格,就会发现两次结果不同.
- 幻读是指一个事务在两次查询之间,数据的数量发生了变化,导致两次结果不一致. 通常是由于另一个事务对数据进行了插入或删除操作。例如,A事务查询某个分类下有多少种商品,B事务向该分类下插入了一种新商品并提交,然后A事务再次查询该分类下有多少种商品,就会发现两次结果不同.
脏读、幻读、不可重复读
于 2023-03-09 16:59:05 首次发布