Oracle相当于ROWLOCK,UPDLOCK,READPAST查询提示

Syn*_*sso 4 sql oracle locking

在SQL Server中,我在查询中使用了以下提示:

  • rowlock(行级锁定)
  • updlock(防止脏读)
  • readpast(不要阻塞等待行锁,转到第一个未锁定的行)

例如

select top 1 data from tablez with (rowlock,updlock,readpast);
Run Code Online (Sandbox Code Playgroud)

是否有与Oracle相同的查询提示?

APC*_*APC 7

相当于ROWLOCKFOR UPDATE条款

select *
from emp
for update;
Run Code Online (Sandbox Code Playgroud)

由于11g Oracle已经记录SKIP LOCKED了相当于以下内容的语法READPAST:

select *
from emp
for update skip locked;
Run Code Online (Sandbox Code Playgroud)

这种语法已经工作了很长时间(它是高级队列的基础),但如果它不在文档中,则不支持,

没有等效的UPDLOCK锁,因为Oracle flat out不允许脏读.了解更多.