(学习笔记)事务的三种问题

<以下只为本人学习的一些笔记,仅作备忘用,如有错漏,也欢迎大家指正>


事务在并发执行时有可能产生脏读、不可重复读、幻读三种问题。这三种问题产生的原因归根到底都是事务没有按顺序执行导致的数据错乱。分别称为3种问题只是情形不一样,各自侧重的问题现象不一样而已。对于这3个概念这个文章总结得比较容易明白http://my.oschina.net/sansom/blog/121712


脏读:侧重于读到的数据是旧的。

不可重复读:侧重于在同一个事务里面重复读时数据不同。

幻读:侧重于由于读到的数据是旧的(也就是脏读)导致事务里的增删操作不成功。


在sqlite里面,事务的隔离级别都被设置成了最高的serializable,也就是可以防止事务的脏读幻读和不可重复读。也就是sqlite执行事务时都是使用表级锁。我们无需为sqlite的事务并发担忧,我们要做的只是将操作放进各自的事务中。

https://www.sqlite.org/isolation.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值