CONTEXT_INFO (Transact-SQL)

Gäller för:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceSQL-databas i Microsoft Fabric

Denna funktion returnerar värdet context_info antingen satt för den aktuella sessionen eller batchen, eller härstammat genom användning av satsen SET CONTEXT_INFO .

Transact-SQL syntaxkonventioner

Syntax

CONTEXT_INFO()  

Returvärde

Det context_info värdet.

Om context_info inte sattes:

  • SQL Server returnerar NULL.
  • SQL Database returnerar en unik sessionsspecifik GUID.

Anmärkningar

Funktionen Multiple Active Result Sets (MARS) gör det möjligt för applikationer att köra flera batcher, eller förfrågningar, samtidigt på samma anslutning. När en av MARS-anslutningsbatcharna kör SET CONTEXT_INFO, returnerar CONTEXT_INFO funktionen det nya kontextvärdet när CONTEXT_INFO funktionen körs i samma batch som SET-satsen. Om CONTEXT_INFO funktionen körs i en eller flera av de andra anslutningsbatcharna, returnerar CONTEXT_INFO inte funktionen det nya värdet om inte batcherna startade efter att batchen som körde SET-satsen slutförts.

Permissions

Kräver inga särskilda tillstånd. Följande systemvyer lagrar kontextinformationen, men för att fråga dessa vyer direkt krävs behörigheter SELECT och VIEW SERVER STATE:

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

Examples

Detta enkla exempel sätter värdet context_info till 0x1256698456, och använder CONTEXT_INFO sedan funktionen för att hämta värdet.

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

Se även

STÄLL CONTEXT_INFO (Transact-SQL)SESSION_CONTEXT (Transact-SQL)
sp_set_session_context (Transact-SQL)