您的位置:首页 > 其它

【笔记】 事务管理中的脏读, 幻读,不可重复读

2016-04-13 10:21 330 查看
脏读

当一事务正改一行数据,提交或回滚前,另一事务可读此行数据。此即脏读,因第一事务可回滚,而致第二事务读无效数值。

例,线程一读一行,线程二正改其值。因事务隔离属性为READ UNCOMMITTED,其它可见其修改值。

帐号余额表,线程一正读,线程二正改,'READ
UNCOMMITTED',其它线程可见 正修改值。

幻读

当一事务,同查询发生二次,第二次有数第一次不包含数据。此因其二事务间,第二事务插入新行数据。

例,一事务正插入数据,另一事务正读数据,若读方隔离级为 'READ COMMITTED', 当第二读时,将获新行数据。

不可重复读

同一事务中,同一查询得不同结果。此因其间,另一事务更新并提交数据。

例,一线程正读取数据,另一线程更新并提交数据,因事务隔离级为 'READ COMMITED', 因此同一事务中,不同读请求返回不同数据。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: