例:
张三账户余额1000
此时有A、B事务对张三余额操作
1. 读未提交(脏读):
一个事务可以读取到另一个事务未提交的数据。
A执行+500,此时还未提交,B读取到余额1500,购买了1500块钱的东西,购买成功了
此时A异常回滚
平台损失了500
2. 读已提交(不可重复读):
一个事务可以读取到另一个事务已提交的数据。
A执行-500,此时因为A还未提交,B读取到的还是1000,执行-1000,提交成功
当A提交时发现应没钱了。
3. 不可重复读:
记录加上不可重入锁,被读取了后不能被修改
新增的数据无法读取,会出现幻读情况
4. 串行化:
事务顺序执行
性能下降,无论发生什么都不会出问题。