当前位置: 首页 > 面试题库 >

Oracle等效于ROWLOCK,UPDLOCK,READPAST查询提示

宇文和同
2023-03-14
问题内容

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

  • nowlock (row level locking)
  • updlock (prevents dirty reads)
  • readpast(不要阻止等待行锁,请转到第一个未锁定的行)

例如

select top 1 data from tablez with (rowlock,updlock,readpast);

Oracle是否有等效的查询中提示?


问题答案:

等价于ROWLOCKFOR UPDATE子句

select *
from emp
for update;

从11g开始,Oracle已经记录了SKIP LOCKED语法,该语法等效于READPAST

select *
from emp
for update skip locked;

这种语法已经使用了很长时间了(它是高级排队的基础),但是如果文档中未提供该语法,则不支持该语法,

没有任何等效的UPDLOCK锁定,因为Oracle彻底禁止脏读。了解更多。



 类似资料:
  • 问题内容: 我想知道这些关键字在sql server中的用途以及何时使用它?我的意思是人们会遇到什么情况。 只是看到他们使用上面的SQL ,是什么,? 会发生什么,? 什么是?当我们使用时会发生什么? 这里上面的sql用于更新语句,并且还在嵌套的select子查询中……为什么? 会发生什么? 我的要求是,请以大量示例说明每个要点,以使我可以理解这些关键字的用法。谢谢 问题答案: 它们是用于指定锁定

  • 问题内容: 我的SQL代码如下: 等效的linq表达式是什么? 问题答案: 我第一次尝试在 来源 LINQ to SQL中的NOT IN子句

  • 问题内容: 我有一个Oracle 11g XE数据库,并且有一个查询结果集: 我想在逗号分隔的同一行中获得所有相关类别的不同ID,像这样 我以前使用过Postgres,并在那里提供了帮助。如何在Oracle 11g XE中获得相同的结果? 问题答案: 除非您在存储过程中使用它来将输出另存为数组(或集合),否则使用的查询应该足够并提供相同的输出。 在oracle中,我们没有像这样的简单转换函数。但是

  • 问题内容: 我正在从xml配置转移到注释。我想转换一个会话范围的bean是 可以通过注释完成此操作吗?如果没有,我该怎么做才能使该声明继续工作? 问题答案: 在spring上下文xml中,执行以下操作: 请注意,尽管如此,你将需要为该包中的所有类编写接口。

  • 问题内容: 我想知道使用INNER JOIN -clause的SQL查询的django等效项。我有两个与ForeignKey链接的模型。 我想从“表”中将“ item_is_locked”值设置为false的请求表中获取字段 如果使用SQL查询,我将使用以下代码: 问题答案: 您可以使用和获得所需的结果。 尝试:

  • 问题内容: 您将如何证明两个查询在功能上是等效的,例如它们将始终都返回相同的结果集。 由于在执行此操作时会想到一个特定的查询,因此最终按照@dougman的建议进行操作,在有关表的约10%的行中进行比较并比较结果,以确保没有不合适的结果。 问题答案: 最好的办法是根据给定的一组输入比较两个查询输出,以查找任何差异。要说它们对于所有输入将始终返回相同的结果,实际上取决于数据。 对于Oracle,最好