Classe di evento Lock:Released

Si applica a: sìSQL Server (tutte le versioni supportate)

La classe di evento Lock:Released segnala il rilascio di un blocco su una risorsa, ad esempio una pagina.

Le classi di evento Lock:Acquired e Lock:Released consentono di monitorare i blocchi acquisiti sugli oggetti, il tipo di blocco applicato e la durata del blocco. I blocchi mantenuti per lunghi periodi di tempo possono causare problemi di contesa. Per questo è necessario esaminarli. Ad esempio, è possibile che un'applicazione acquisisca i blocchi sulle righe di una tabella e quindi rimanga in attesa dell'input utente. L'attesa dell'input utente può essere prolungata e pertanto bloccare altri utenti. In tal caso, sarà necessario riprogettare l'applicazione in modo che le richieste di blocco vengano attivate soltanto quando necessario e che al momento dell'acquisizione dei blocchi non venga richiesto l'input utente.

Colonne di dati della classe di evento Lock: Released

Nome colonna di dati Tipo di dati Descrizione ID colonna Filtrabile
ApplicationName nvarchar Nome dell'applicazione client in cui è stata creata la connessione a un'istanza di SQL Server. Questa colonna viene popolata con i valori passati dall'applicazione e non con il nome visualizzato del programma. 10
BinaryData image Identificatore della risorsa blocco. 2
ClientProcessID int ID assegnato dal computer host al processo in cui è in esecuzione l'applicazione client. Questa colonna di dati viene popolata se tramite il client viene indicato l'ID del processo client. 9
DatabaseID int ID del database in cui è stato rilasciato il blocco. SQL Server Profiler visualizza il nome del database se la colonna di dati ServerName è acquisita nella traccia e il server è disponibile. Determinare il valore per un database utilizzando la funzione DB_ID. 3
EventClass int Tipo di evento = 23. 27 No
EventSequence int Sequenza di un determinato evento all'interno della richiesta. 51 No
GroupID int ID del gruppo del carico di lavoro in cui viene generato l'evento di Traccia SQL. 66
HostName nvarchar Nome del computer in cui viene eseguito il client. Questa colonna di dati viene popolata se il client fornisce il nome host. Per determinare il nome host, usare la funzione HOST_NAME. 8
IntegerData2 int Identificato solo a scopo informativo. Non supportata. Non è garantita la compatibilità con le versioni future. 55
IsSystem int Indica se l'evento è stato generato per un processo di sistema o un processo utente. 1 = sistema, 0 = utente. 60
LoginName nvarchar Nome dell'account di accesso dell'utente (account di sicurezza di SQL Server o credenziali di accesso di Windows nel formato DOMINIO\nomeutente). 11
LoginSid image ID di sicurezza (SID) dell'utente connesso. Queste informazioni sono disponibili nella vista del catalogo sys.server_principals. Il SID è univoco per ogni account di accesso nel server. 41
Mode int Modalità risultante a seguito del rilascio del blocco.

0=NULL - Compatibile con tutte le altre modalità di blocco (LCK_M_NL)

1=Blocco di stabilità dello schema (LCK_M_SCH_S)

1=Blocco di modifica dello schema (LCK_M_SCH_M)

3=Blocco condiviso (LCK_M_S)

4=Blocco di aggiornamento (LCK_M_U)

5=Blocco esclusivo (LCK_M_X)

6=Blocco condiviso preventivo (LCK_M_IS)

7=Blocco di aggiornamento preventivo (LCK_M_IU)

8=Blocco esclusivo preventivo (LCK_M_IX)

9=Condiviso-Preventivo-Aggiornamento (LCK_M_SIU)

10=Condiviso-Preventivo-Esclusivo (LCK_M_SIX)

10=Aggiornamento-Preventivo-Esclusivo (LCK_M_SIX)

12=Blocco aggiornamenti bulk (LCK_M_BU)

13=Intervalli di chiavi-Condiviso/Condiviso (LCK_M_RS_S)

14=Intervalli di chiavi-Condiviso/Aggiornamento (LCK_M_RS_U)

15=Intervalli di chiavi-Inserimento-NULL (LCK_M_RI_NL)

16=Intervalli di chiavi-Inserimento-Condiviso (LCK_M_RI_S)

17=Intervalli di chiavi-Inserimento-Aggiornamento (LCK_M_RI_U)

18=Intervalli di chiavi-Inserimento-Esclusivo (LCK_M_RI_X)

19=Intervalli di chiavi-Esclusivo-Condiviso (LCK_M_RX_S)

20=Intervalli di chiavi-Esclusivo-Aggiornamento (LCK_M_RX_U)

21=Intervalli di chiavi-Esclusivo-Esclusivo (LCK_M_RX_X)
32
NTDomainName nvarchar Dominio Windows di appartenenza dell'utente. 7
NTUserName nvarchar Nome utente di Windows. 6
ObjectID int ID dell'oggetto rilasciato assegnato dal sistema, se disponibile e applicabile. 22
ObjectID2 bigint ID dell'entità o dell'oggetto correlato, se disponibile e applicabile. 56
OwnerID int 1=TRANSACTION

2=CURSOR

3=SESSION

4=SHARED_TRANSACTION_WORKSPACE

5=EXCLUSIVE_TRANSACTION_WORKSPACE
58
RequestID int ID della richiesta contenente l'istruzione. 49
ServerName nvarchar Nome dell'istanza di SQL Server tracciata. 26 No
SessionLoginName nvarchar Nome dell'account di accesso dell'utente che ha avviato la sessione. Se ad esempio si stabilisce la connessione a SQL Server con l'account di accesso Login1 e si esegue un'istruzione con l'account di accesso Login2, SessionLoginName indica Login1 e LoginName indica Login2. In questa colonna sono visualizzati sia gli account di accesso di SQL Server che quelli di Windows. 64
SPID int ID della sessione in cui si è verificato l'evento. 12
StartTime datetime Ora di inizio dell'evento, se disponibile. 14
TextData ntext Valore di testo che dipende dalla classe di evento acquisita nella traccia. 1
TransactionID bigint ID della transazione assegnato dal sistema. 4
Type int 1=NULL_RESOURCE

2=DATABASE

3=FILE

5=OBJECT

6=PAGE

7=KEY

8=EXTENT

9=RID

10=APPLICATION

11=METADATA

12=AUTONAMEDB

13=HOBT

14=ALLOCATION_UNIT
57

Vedere anche

sp_trace_setevent (Transact-SQL)
Classe Lock:Acquired Event
sys.dm_tran_locks (Transact-SQL)