CONTEXT_INFO (Transact-SQL)
S’applique à : SQL Server Azure SQL Database Azure SQL Managed Instance
Cette fonction renvoie la valeur context_info définie pour la session ou le traitement actif, ou dérivée à l’aide de l’instruction SET CONTEXT_INFO.
Conventions de la syntaxe Transact-SQL
Syntaxe
CONTEXT_INFO()
Valeur retournée
La valeur context_info.
Si context_info n’était pas défini :
- SQL Server retourne une valeur NULL.
- SQL Database retourne un GUID unique spécifique à la session.
Remarques
La fonctionnalité MARS (Multiple Active Result Sets) permet aux applications d'exécuter simultanément plusieurs traitements ou requêtes sur la même connexion. Lorsqu'un des traitements d’une connexion MARS exécute la procédure SET CONTEXT_INFO, la fonction CONTEXT_INFO
renvoie la nouvelle valeur de contexte lorsque la fonction CONTEXT_INFO
est exécutée dans le même traitement que l'instruction SET. Si la fonction CONTEXT_INFO
s’exécute dans un ou plusieurs autres traitements de la connexion, la fonction CONTEXT_INFO
ne retourne pas la nouvelle valeur, sauf si ces traitements ont démarré une fois que le traitement qui a exécuté l’instruction SET est terminé.
Autorisations
Ne nécessite aucune autorisation particulière. Les vues système suivantes stockent les informations de contexte, mais l’interrogation directe de ces vues requiert les autorisations SELECT et VIEW SERVER STATE :
- sys.dm_exec_requests
- sys.dm_exec_sessions
- sys.sysprocesses
Exemples
Cet exemple simple attribue à 0x1256698456
la valeur context_info, puis utilise la fonction CONTEXT_INFO
pour extraire la valeur.
SET CONTEXT_INFO 0x1256698456;
GO
SELECT CONTEXT_INFO();
GO
Voir aussi
SET CONTEXT_INFO (Transact-SQL)SESSION_CONTEXT (Transact-SQL)
sp_set_session_context (Transact-SQL)