CONTEXT_INFO (Transact-SQL)
适用于: SQL Server Azure SQL 数据库 Azure SQL 托管实例
此函数返回通过使用 SET CONTEXT_INFO 语句为当前会话或批处理设置的“context_info”值。
语法
CONTEXT_INFO()
返回值
“context_info”值。
如果尚未设置 context_info:
- SQL Server 返回 NULL。
- SQL 数据库 返回特定于会话的唯一 GUID。
备注
多个活动的结果集 (MARS) 功能将使应用程序能够使用相同连接同时运行多个批处理或请求。 当 MARS 连接中的一个批处理运行 SET CONTEXT_INFO 时,如果 CONTEXT_INFO
函数作为 SET 语句运行在同一批处理中,则该 CONTEXT_INFO
函数将返回新的上下文值。 如果 CONTEXT_INFO
函数运行一个或多个其他连接批处理,则 CONTEXT_INFO
函数不返回新值,除非这些批处理在完成运行 SET 语句的批处理后启动。
权限
不要求具有特殊权限。 下面的系统视图会存储上下文信息,但直接查询这些视图需要 SELECT 和 VIEW SERVER STATE 权限:
- sys.dm_exec_requests
- sys.dm_exec_sessions
- sys.sysprocesses
示例
以下简单示例将“context_info”值设置为 0x1256698456
,然后使用 CONTEXT_INFO
函数检索该值。
SET CONTEXT_INFO 0x1256698456;
GO
SELECT CONTEXT_INFO();
GO
另请参阅
SET CONTEXT_INFO (Transact-SQL)SESSION_CONTEXT (Transact-SQL)
sp_set_session_context (Transact-SQL)