【DB笔试面试659】在Oracle中,SELECT ... FOR UPDATE加的是什么锁?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了【DB笔试面试659】在Oracle中,SELECT ... FOR UPDATE加的是什么锁?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含798字,纯文字阅读大概需要2分钟。
内容图文
![【DB笔试面试659】在Oracle中,SELECT ... FOR UPDATE加的是什么锁?](/upload/InfoBanner/zyjiaocheng/860/ecf9b4a8c1214791a794e4c084428001.jpg)
?
题目 部分
在Oracle中,SELECT ... FOR UPDATE加的是什么锁?
?
答案部分
SELECT ... FOR UPDATE语句的语法如下:
1SELECT ... FOR UPDATE [OF column_list][WAIT n|NOWAIT][SKIP LOCKED];
其中,这个OF子句在涉及到多个表时,具有较大作用。若不使用OF指定锁定的表的列,则所有表的相关行均被锁定。若在OF中指定了需修改的列,则只有与这些列相关的表的行才会被锁定。WAIT子句指定等待其他用户释放锁的秒数,防止无限期的等待。
“使用FOR UPDATE WAIT”子句的优点如下:
① 防止无限期地等待被锁定的行
② 允许应用程序中对锁的等待时间进行更多的控制
③ 对于交互式应用程序非常有用,因为这些用户不能等待不确定的时间
④ 若使用了SKIP LOCKED,则可以越过锁定的行,不会报告由wait n引发的“资源忙”异常报告
在Oracle 10g之前,SELECT ... FOR UPDATE获取的是2级TM锁,而从Oracle 10g开始,SELECT ... FOR UPDATE获取的是3级TM锁。
内容总结
以上是互联网集市为您收集整理的【DB笔试面试659】在Oracle中,SELECT ... FOR UPDATE加的是什么锁?全部内容,希望文章能够帮你解决【DB笔试面试659】在Oracle中,SELECT ... FOR UPDATE加的是什么锁?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。