CONTEXT_INFO (Transact-SQL)

Se aplica a:SQL ServerAzure SQL DatabaseAzure SQL Managed Instance

Esta función devuelve el valor context_info establecido para la sesión o lote actual, o derivada del uso de la instrucción SET CONTEXT_INFO.

Convenciones de sintaxis de Transact-SQL

Sintaxis

CONTEXT_INFO()  

Nota:

Para ver la sintaxis de Transact-SQL para SQL Server 2014 (12.x) y versiones anteriores, consulte Versiones anteriores de la documentación.

Valor devuelto

El valor context_info.

Si context_info no se ha establecido:

  • SQL Server devuelve NULL.
  • SQL Database devuelve un GUID único específico de sesión.

Observaciones

La característica de conjuntos de resultados activos múltiples (MARS) permite a las aplicaciones ejecutar varios lotes o solicitudes al mismo tiempo en la misma conexión. Cuando uno de los lotes de una conexión MARS ejecuta SET CONTEXT_INFO, la función CONTEXT_INFO devuelve el nuevo valor de contexto cuando la función CONTEXT_INFO se ejecuta en el mismo lote que la instrucción SET. Si la función CONTEXT_INFO se ejecuta en uno o más de los otros lotes de conexión, la función CONTEXT_INFO no devuelve el nuevo valor a menos que esos lotes hayan comenzado después de completar el lote que ejecutó la instrucción SET.

Permisos

No requiere permisos especiales. Las siguientes vistas del sistema almacenan la información de contexto, pero la consulta directa de estas vistas requiere los permisos SELECT y VIEW SERVER STATE:

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

Ejemplos

En este ejemplo sencillo se establece el valor de context_info en 0x1256698456 y, después, se usa la función CONTEXT_INFO para recuperarlo.

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

Consulte también

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