CONTEXT_INFO (Transact-SQL)
適用於:SQL Server
Azure SQL 資料庫 Azure SQL 受控執行個體
此函數會傳回針對目前工作階段或批次所設定,或使用 SET CONTEXT_INFO 陳述式而衍生的 context_info 值。
Syntax
CONTEXT_INFO()
注意
若要檢視 SQL Server 2014 (12.x) 和更早版本的 Transact-SQL 語法,請參閱舊版文件。
傳回值
context_info 值。
若並未設定 context_info:
- SQL Server 傳回 NULL。
- SQL Database 會傳回工作階段特定的唯一 GUID。
備註
Multiple Active Result Set (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)