CONTEXT_INFO (Transact-SQL)

Si applica a:SQL ServerDatabase SQL di AzureIstanza gestita di SQL di AzureDatabase SQL in Microsoft Fabric

Questa funzione restituisce il valore context_info impostato per la sessione o il batch corrente, oppure derivato tramite l'uso dell'istruzione SET CONTEXT_INFO .

Convenzioni relative alla sintassi Transact-SQL

Sintassi

CONTEXT_INFO()  

Valore restituito

Valore di context_info.

Se context_info non è stato impostato:

  • SQL Server restituisce NULL.
  • Il database SQL restituisce un GUID univoco specifico della sessione.

Osservazioni:

Grazie alla funzionalità MARS (Multiple Active Result Set) le applicazioni possono eseguire più batch o richieste contemporaneamente usando la stessa connessione. Quando uno dei batch di connessione MARS viene eseguito SET CONTEXT_INFO, la CONTEXT_INFO funzione restituisce il nuovo valore contestuale, quando la CONTEXT_INFO funzione viene eseguita nello stesso batch dell'istruzione SET . Se la CONTEXT_INFO funzione viene eseguita in uno o più degli altri batch di connessione, la CONTEXT_INFO funzione non restituisce il nuovo valore a meno che quei batch non inizino dopo il completamento del batch che ha eseguito l'istruzione SET .

Autorizzazioni

Non sono richieste autorizzazioni particolari. Le seguenti viste di sistema memorizzano le informazioni contestuali, ma interrogare direttamente queste viste richiede i permessi SELECT e VIEW SERVER STATE:

  • sys.dm_exec_requests
  • sys.dm_exec_sessions
  • sys.sysprocesses

Esempi

Questo semplice esempio imposta il valore di context_info su 0x1256698456 e quindi usa la funzione CONTEXT_INFO per recuperare il valore.

SET CONTEXT_INFO 0x1256698456;  
GO  
SELECT CONTEXT_INFO();  
GO  

Vedi anche

SET CONTEXT_INFO (Transact-SQL)SESSION_CONTEXT (Transact-SQL)
sp_set_session_context (Transact-SQL)