日期:2014-05-17  浏览次数:21210 次

求教 For Update 解锁 问题
求教两个update的问题 

1. 如果在for update一个行后 网络断掉 这个行会在什么时候解锁

2. 如何查询一个行是否被锁定 如果需要for update时 是否要事先判断下这个行是否被锁定 防止重复加锁

------解决方案--------------------
1 select .... from update是悲观加锁,你断开连接了意味着你的会话异常关闭了,其余的要由服务器来释放了。具体锁定时间不知道,一般需要手工解锁。
2 不需要判断,如果已经被锁,ORACLE会提示你,资源正忙。但可以用select .... from update nowait,不需要等待。如果已被锁,立即失败,如果未被锁,立即成功锁定!