CONTEXT_INFO (Transact-SQL)
Gilt für: SQL Server Azure SQL-Datenbank Azure SQL Managed Instance
Diese Funktion gibt den context_info-Wert zurück, der entweder für die aktuelle Sitzung bzw. den aktuellen Batch festgelegt oder mithilfe der SET CONTEXT_INFO-Anweisung abgeleitet wurde.
Transact-SQL-Syntaxkonventionen
Syntax
CONTEXT_INFO()
Rückgabewert
Der Wert von context_info.
Wenn context_info nicht festgelegt wurde:
- SQL Server gibt NULL zurück.
- SQL-Datenbank gibt eine eindeutige sitzungsspezifische GUID zurück.
Hinweise
Das MARS-Feature (Multiple Active Result Sets) ermöglicht Anwendungen die Ausführung mehrerer Batches oder Anforderungen zur gleichen Zeit über dieselbe Verbindung. Führt einer der Batches in einer MARS-Sitzung SET CONTEXT_INFO aus, wird der neue Kontextwert von der CONTEXT_INFO
-Funktion zurückgegeben, wenn die CONTEXT_INFO
-Funktion im gleichen Batch wie die SET-Anweisung ausgeführt wird. Wenn die CONTEXT_INFO
-Funktion in einem oder mehreren der anderen Verbindungsbatches ausgeführt wird, gibt die CONTEXT_INFO
-Funktion den neuen Wert nur dann zurück, wenn diese Batches nach dem Abschluss des Batches ausgeführt werden, für den die SET-Anweisung ausgeführt wurde.
Berechtigungen
Benötigt keine besonderen Berechtigungen. Die Kontextinformationen sind in den folgenden Systemsichten gespeichert, das direkte Abfragen dieser Sichten erfordert aber die Berechtigungen SELECT und VIEW SERVER STATE:
- sys.dm_exec_requests
- sys.dm_exec_sessions
- sys.sysprocesses
Beispiele
In diesem einfachen Beispiel wird der context_info-Wert auf 0x1256698456
festgelegt und der Wert dann mithilfe der CONTEXT_INFO
-Funktion abgerufen.
SET CONTEXT_INFO 0x1256698456;
GO
SELECT CONTEXT_INFO();
GO
Weitere Informationen
SET CONTEXT_INFO (Transact-SQL)SESSION_CONTEXT (Transact-SQL)
sp_set_session_context (Transact-SQL)