Oracle数据库常用的5种锁定

发布时间:2017-6-29 10:51:14编辑:www.fx114.net 分享查询网我要评论
本篇文章主要介绍了"Oracle数据库常用的5种锁定",主要涉及到Oracle数据库常用的5种锁定方面的内容,对于Oracle数据库常用的5种锁定感兴趣的同学可以参考一下。


  • 行共享锁定:一般通过SELECTFOR UPDATE语句隐式获得行共享锁定,在Oracle中用户也可以通过LOCKTABLE IN ROW SHARE MODE语句显式获得行共享锁定。行共享锁定并不防止对数据行进行更改的操作,但是可以防止其他会话获取独占性数据表锁定。允许进行多个并发的行共享和行独占性锁定,还允许进行数据表的共享或者采用共享行独占锁定。
  • 行独占锁定:通过一条INSERTUPDATEDELETE语句隐式获取,或者通过一条LOCKTABLE IN ROW EXCLUSIVE MODE语句显式获取。这个锁定可以防止其他会话获取一个共享锁定、共享行独占锁定或独占锁定。
  • 表共享锁定:通过LOCKTABLE IN SHARE MODE语句显式获得。这种锁定可以防止其他会话获取行独占锁定(INSERTUPDATEDELETE),或者防止其他表共享行独占锁定或表独占锁定,它允许在表中拥有多个行共享和表共享锁定。该锁定可以让会话具有对表事务级一致性访问,因为其他会话在用户提交或者回溯该事务并释放对该表的锁定之前不能更改这个被锁定的表。
  • 表共享行独占:通过LOCKTABLE IN SHARE ROW EXCLUSIVE MODE语句显式获得。这种锁定可以防止其他会话获取一个表共享、行独占或者表独占锁定,它允许其他行共享锁定。这种锁定类似于表共享锁定,只是一次只能对一个表放置一个表共享行独占锁定。如果A会话拥有该锁定,则B会话可以执行SELECTFOR UPDATE操作,但如果B会话试图更新选择的行,则需要等待。
  • 表独占:通过LOCKTABLE IN EXCLUSIVE MODE显式获得。这个锁定防止其他会话对该表的任何其他锁定。




上一篇:sshd_config配置详解
下一篇:只要会说“范围、时间、成本、质量”,鹦鹉都能成为项目经理

相关文章

相关评论

本站评论功能暂时取消,后续此功能例行通知。

一、不得利用本站危害国家安全、泄露国家秘密,不得侵犯国家社会集体的和公民的合法权益,不得利用本站制作、复制和传播不法有害信息!

二、互相尊重,对自己的言论和行为负责。

好贷网好贷款