事务隔离级别
数据库提供隔离级别:
1、读未提交数据
事务在执行过程中可以看到其他事务未提交的数据,这种隔离级别违反了事务的隔离级别
2、读已提交数据
事务在执行过程中可以看到其他事务已提交更改过的数据
3、可重复读
事务在执行过程中可以看到其他事务已提交的插入数据,但看不到其他事务已提交的更新的数据
4、串行化
事务在执行过程中完全看不到其他事务所更改或插入的数据,只有在该事务执行完成后,才能看到它所提交的数据。
当两个事务同时操作相同的数据时,如果其中一个事务已经在访问数据了,另一个事务只能停下来等待,直至第一个事务执行完毕,他才能恢复执行。
事务隔离级别设置不正确,可能发生以下并发问题
1、读“脏”数据
事务在执行过程中访问到了其他事务未提交的数据
2、不可重复读
事务在执行过程中再次读取同一数据时,发现其他事务对此数据进行了更新。
3、“幻象”读
事务在执行过程中再次执行同一查询时,发现其他事务的更新。
隔离级别 读“脏”数据 不可重复读 幻象读
读未提交数据 存在 存在 存在
读已提交数据 不存在 存在 存在
可重复读 不存在 不存在 存在
串行化 不存在 不存在 不存在

6743

被折叠的 条评论
为什么被折叠?



