【笔记】 事务管理中的脏读, 幻读,不可重复读
2016-04-13 10:21
330 查看
脏读
当一事务正改一行数据,提交或回滚前,另一事务可读此行数据。此即脏读,因第一事务可回滚,而致第二事务读无效数值。
例,线程一读一行,线程二正改其值。因事务隔离属性为READ UNCOMMITTED,其它可见其修改值。
帐号余额表,线程一正读,线程二正改,'READ
UNCOMMITTED',其它线程可见 正修改值。
幻读
当一事务,同查询发生二次,第二次有数第一次不包含数据。此因其二事务间,第二事务插入新行数据。
例,一事务正插入数据,另一事务正读数据,若读方隔离级为 'READ COMMITTED', 当第二读时,将获新行数据。
不可重复读
同一事务中,同一查询得不同结果。此因其间,另一事务更新并提交数据。
例,一线程正读取数据,另一线程更新并提交数据,因事务隔离级为 'READ COMMITED', 因此同一事务中,不同读请求返回不同数据。
当一事务正改一行数据,提交或回滚前,另一事务可读此行数据。此即脏读,因第一事务可回滚,而致第二事务读无效数值。
例,线程一读一行,线程二正改其值。因事务隔离属性为READ UNCOMMITTED,其它可见其修改值。
帐号余额表,线程一正读,线程二正改,'READ
UNCOMMITTED',其它线程可见 正修改值。
幻读
当一事务,同查询发生二次,第二次有数第一次不包含数据。此因其二事务间,第二事务插入新行数据。
例,一事务正插入数据,另一事务正读数据,若读方隔离级为 'READ COMMITTED', 当第二读时,将获新行数据。
不可重复读
同一事务中,同一查询得不同结果。此因其间,另一事务更新并提交数据。
例,一线程正读取数据,另一线程更新并提交数据,因事务隔离级为 'READ COMMITED', 因此同一事务中,不同读请求返回不同数据。
相关文章推荐
- matlab直方图均衡
- 正态分布(Normal distribution)又名高斯分布(Gaussian distribution)
- Linux下配置多路径
- Linux职业发展方向
- Oracle锁表查询及解锁kill
- Oracle 创建用户 修改用户密码 授权命令
- Oracle?create?tablespace语法详解
- Oracle归档相关命令及常见问题
- Oracle监听lsnrctl查询状态详解
- 如何修改服务器远程连接端口
- Windows 2008 开启Ping 允许ping服务器
- windows HBA卡 查询WWN号
- 在Vbox上安装linux需要注意的问题 “异常退出错误。”或不识别鼠标的解决办法
- 转载:使用命令行启动VirtualBox虚拟机
- virtualbox安装记录
- Oracle的冷备份与热备份
- centos 6 安装virtualbox 闪退问题
- 防止人为误操作MySQL数据库技巧一例
- Openssl漏洞问题升级为1.0.1g(OpenSSL 漏洞版本v1.0.1到1.0.1f)
- Linux 实时流量查看 iftop安装教程和一些参数和命令