Подсказка блокировки таблицы по умолчанию на SQL Server 2005/2008 - PullRequest
2 голосов
/ 06 октября 2010

Как посмотреть подсказку о блокировке глобальной таблицы по умолчанию?


- Вопросы

  1. Есть ли DMV / DMF (динамическийУправление / Вид), которые возвращают такую ​​информацию?
  2. А также есть ли способ изменить подсказку о блокировке по умолчанию?

В настоящее время я добавляю подсказку nolock почти везде, чтобы предотвратить блокировки.Я бы хотел избежать этого, изменив подсказку по умолчанию на nolock, чтобы не нужно было изменять существующие хранимые процедуры.

Ответы [ 2 ]

4 голосов
/ 06 октября 2010

Глобальных настроек нет. По умолчанию всегда READ COMMITTED

Может быть изменено на

NOLOCK везде совершенно дезинформирован И здесь тоже:

Редактировать: после комментария о тайм-ауте запроса ...

Запрос с NOLOCK может по-прежнему потреблять огромные ресурсы процессора и ввода-вывода. Блокировка не такая уж большая проблема. Если это так, то другой запрос занимает слишком много времени, вероятно, потребляя огромные ресурсы процессора и ввода-вывода ...

3 голосов
/ 06 октября 2010

Я не знаю ни о каких глобальных настройках.ИМХО, даже если он существует, может быть мало оправданий для его использования.

Однако вы можете установить уровни изоляции, чтобы контролировать, могут ли отдельные транзакции считывать изменения данных, сделанные другими транзакциями.Это делается через

SET TRANSACTION ISOLATION LEVEL
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...