脏读:读完后,别人回滚了,读出来的数据无效
不可重复读:读第一次和第二次的结果不一样
幻读:第二次读多了一行(几行)
https://www.cnblogs.com/qanholas/p/3227220.html
修正一点:在Read Commited级别中,读锁是读完就释放,写锁是事务结束才释放
1.读未提交:
特点:不上锁
问题:脏读,不可重复读,幻读
2.读提交:
特点:读前先取读锁,读后释放;写前先取写锁,事务提交后才释放
解决了:
脏读:事务B修改但未提交,锁还在手上,事务A无法读,也就产生不了脏读
问题:不可重复读,幻读
3.可重复读
特点:读写前先取读写锁,事务提交后才释放锁
解决了:
不可重复读:因为读了之后不释放读锁,因此别的事务也就无法写
问题:幻读
4.序列化
特点:读写前对整张表取读写锁,事务提交后才释放锁
解决了:
幻读:对整张表上锁,别的事务也就无法插入