2008-08-28 3 views
0

При написании SQL-запроса в SQL Server 2005 подсказка запроса READUNCOMMITTED подразумевает NOLOCK или мне тоже нужно указать ее вручную?Does ReadUncommitted imply NoLock

Так:

With (NoLock, ReadUnCommitted) 

так же, как:

With (ReadUnCommitted) 

ответ

-1

Я думаю, что вы можете сказать, что

ReadUncommitted имеет способности NOLOCK

Однако вы не можете сказать, что

NOLOCK имеет способность ReadUncommitted

1

Согласно Калену Делани ...

NOLOCK намек не имеет ничего общего с параметрами индекса. Подсказка сообщает серверу SQL о том, что сервер не запрашивает блокировки при выполнении операций SELECT, поэтому будет конфликтов с данными, которые уже заблокированы. Параметры индекса просто указывают SQL Server, что этот уровень блокировки разрешен, когда происходит блокировка . Например, если ALLOW_ROW_LOCKS отключен, единственными возможными замками будут блокировки страниц или таблиц. Параметры индекса не блокируют блокировки , они просто контролируют возможный размер замков.

В ответ на вопрос в теме вопроса подсказка NOLOCK и подсказка READUNCOMMITTED 10 эквивалентны.

Смежные вопросы