读《Oracle 9i&10g编程艺术》记录---1.3.2 理解并发控制

如果对特定数据库如何实现并发控制了解不够,就会遭遇以下结果:
1. 破坏数据的完整性。
2. 随着用户数的增多,应用的运行速度减慢。
3. 不能很好地扩缩应用来支持大量用户。

1. 实现锁定
数据库使用锁(lock) 来保证任何给定时刻最多只有一个事务在修改给定的一段数据。实质上讲,正是锁机制才使并发控制成为可能。
Oracle锁定策略的总结:
1) Oracle只在修改时才对数据加行级锁。正常情况下不会升级到块级锁或表级锁(不过两段提交期间的一段很短的时间内除外,这是一个不常见的操作)。
2) 如果只是读,则Oracle不会对数据进行锁定,不会因为简单的读操作而对数据行加锁。
3) 写操作不会阻塞出操作。
4) 写操作会阻塞对同一数据行的其他写操作,而读操作不会阻塞写操作。

2.防止丢失更新
Oracle的无阻塞方法有一个副作用,如果确实想保证一次最多只有一个用户访问一行数据,开发人员就得自己做些工作。
如: select ........ for update;

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/110321/viewspace-608533/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/110321/viewspace-608533/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值