SQL标准的4种隔离级别

(1)READ UNCOMMITED(未提交可读)-- 事务1修改了数据A后未提交,事务2可以读到被事务1修改的数据A,但是事务1可能最终不提交,那么事务2读到的就是错误的数据(脏数据)

(2)READ COMMITED(提交了可读)-- 事务1读取了数据A后未提交,事务2修改了数据A且提交,然后事务1再去读数据A会发现前后两次读结果不同,这就是不可重复读(因为重复读结果不一样)

(3)REAPATABLE READ(可重复读)-- 事务1读取了数据A后未提交,事务2修改了数据A且提交,然后事务1再去读数据A会发现前后两次读结果相同,这就是可重复读 – MYSQL默认级别

(4)SERIALIZABLE(可串行化)-- 每一行数据加锁,导致所有事务都必须串行执行,但是代价很大

我将sql的四种隔离级别编成小故事,为了方便记忆,:
1,未提交可读 - 同学A 约我可能下午一起去游玩, 而后 同学B约我出去玩, 却被妈妈告知我已经有约了, 但是 同学A可能下午有其他的事, 未能和我一起出去玩,此时 同学B获取到的信息就是有误的了!
2,提交了可读 - 同学A 约我可能下午一起去游玩, 而后 同学B约我出去玩,我同意并和他一起出去玩了, 此时 同学A来找我 发现我已经出去了!
3,可重复读 - 同学A 约我可能下午一起去游玩, 而后 同学B约我出去玩,我同意并和他一起出去玩了,我主动告知同学A ,同学A来找我和同学B 一起游玩.

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值