在 SQL Server 2005 中编写 SQL 语句时,READUNCOMMITTED 查询提示是否暗示 NOLOCK 还是我也必须手动指定它?

也是如此:

With (NoLock, ReadUnCommitted)

与以下相同:

With (ReadUnCommitted)
有帮助吗?

解决方案

是的,他们是同一个人

其他提示

根据卡伦·德莱尼的说法...

NOLOCK 提示与索引选项无关。提示告诉 SQL 服务器在执行 SELECT 操作时不请求锁,因此会有 与已锁定的数据没有冲突。索引选项只是告诉 允许此级别锁定的 SQL Server,当锁定要 发生。例如,如果ALLOW_ROW_LOCKS处于关闭状态,则唯一可能的锁 将是页面或表格锁定。索引选项不会强制锁定 持有,他们只是控制锁的可能大小。

在回答主题中的问题时,NOLOCK 提示和 READUNCOMMITTED 提示是等效的。

我想你可以这么说

ReadUnCommited具有NoLock的能力

然而你不能这么说

NoLock具有ReadUnCommited的能力

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top