SET LOCK_TIMEOUT (Transact-SQL)
Указывает количество миллисекунд, в течение которых инструкция ожидает снятия блокировки.
Применимо для следующих объектов: SQL Server (SQL Server 2008 по текущую версию), База данных SQL Windows Azure (С первоначального выпуска по текущий выпуск). |
Синтаксические обозначения в Transact-SQL
Синтаксис
SET LOCK_TIMEOUT timeout_period
Аргументы
timeout_period
Количество миллисекунд до того, как Microsoft SQL Server вернет ошибку блокировки. Значение -1 (по умолчанию) указывает на отсутствие времени ожидания (то есть инструкция будет ждать всегда).Когда ожидание блокировки превышает значение времени ожидания, возвращается ошибка. Значение «0» означает, что ожидание отсутствует, а сообщение возвращается, как только встречается блокировка.
Замечания
В начале соединения этот параметр имеет значение -1. После изменения новое значение остается в силе в течение работы соединения.
Настройка SET LOCK_TIMEOUT установлена на запуск во время выполнения, но не во время синтаксического анализа.
Рекомендация блокировки READPAST представляет собой альтернативу данному параметру SET.
Инструкции CREATE DATABASE, ALTER DATABASE и DROP DATABASE не поддерживают настройки SET LOCK_TIMEOUT.
Разрешения
Требует членства в роли public.
Примеры
В следующем примере время ожидания блокировки устанавливается на 1800 миллисекунд.
SET LOCK_TIMEOUT 1800;
GO