CONTEXT_INFO (Transact-SQL)
傳回利用 SET CONTEXT_INFO 陳述式,針對目前工作階段或批次所設定的 context_info 值。
語法
CONTEXT_INFO()
傳回值
context_info 的值,如果沒有設定 context_info,則為 NULL。
備註
Multiple Active Result Set (MARS) 可讓應用程式在同一個連接上同時執行多個批次或要求。 當 MARS 連接的其中一個批次執行 SET CONTEXT_INFO 時,CONTEXT_INFO 函數會在與 SET 陳述式相同的批次中執行時,傳回新的內容值。 新值不是由在該連接一或多個其他批次執行的 CONTEXT_INFO 函數所傳回,除非它們是在執行 SET 陳述式的批次完成後才啟動。
權限
不需要任何特殊權限。 內容資訊也是儲存在 sys.dm_exec_requests、sys.dm_exec_sessions 和 sys.sysprocesses 系統檢視中,但若要直接查詢檢視,就需要 SELECT 和 VIEW SERVER STATE 權限。
範例
下面這個簡單的範例會先將 context_info 值設為 0x1256698456,再使用 CONTEXT_INFO 函數來擷取該值。
SET CONTEXT_INFO 0x1256698456
GO
SELECT CONTEXT_INFO()
GO