Condividi tramite


SET LOCK_TIMEOUT (Transact-SQL)

Specifica l'intervallo in millisecondi durante il quale un'istruzione rimane in attesa del rilascio di un blocco.

Icona di collegamento a un argomentoConvenzioni della sintassi Transact-SQL

Sintassi

SET LOCK_TIMEOUT timeout_period

Argomenti

  • timeout_period
    Intervallo di attesa, in millisecondi, prima che Microsoft SQL Server restituisca un errore di blocco. Il valore -1 (predefinito) corrisponde a nessun periodo di timeout, ovvero a un'attesa infinita.

    Quando l'attesa per un blocco supera il valore di timeout, viene restituito un errore. Un valore uguale a 0 significa nessuna attesa e non appena viene incontrato un blocco viene visualizzato un messaggio.

Osservazioni

All'inizio di una connessione tale impostazione è uguale a -1. Se viene modificata, la nuova impostazione rimane attiva per il resto della connessione.

L'opzione SET LOCK_TIMEOUT viene impostata in fase di esecuzione, non in fase di analisi.

L'hint di blocco READPAST è un'alternativa all'opzione SET.

Le istruzioni CREATE DATABASE, ALTER DATABASE e DROP DATABASE non rispettano l'impostazione di SET LOCK_TIMEOUT.

Autorizzazioni

È richiesta l'appartenenza al ruolo public.

Esempi

Nell'esempio seguente il timeout per l'attesa del blocco viene impostato su 1800 millisecondi.

SET LOCK_TIMEOUT 1800
GO