Skip to content

Latest commit

 

History

History
72 lines (59 loc) · 2.79 KB

File metadata and controls

72 lines (59 loc) · 2.79 KB
title CONTEXT_INFO (Transact-SQL) | Microsoft Docs
ms.custom
ms.date 07/24/2017
ms.prod sql
ms.prod_service database-engine, sql-database
ms.component t-sql|functions
ms.reviewer
ms.suite sql
ms.technology t-sql
ms.tgt_pltfrm
ms.topic language-reference
f1_keywords
CONTEXT_INFO_TSQL
CONTEXT_INFO
dev_langs
TSQL
helpviewer_keywords
CONTEXT_INFO function
Multiple Active Result Sets
context information [SQL Server]
MARS [SQL Server]
session context information [SQL Server]
ms.assetid 571320f5-7228-4b0e-9d01-ab732d2d1eab
caps.latest.revision 19
author edmacauley
ms.author edmaca
manager craigg

CONTEXT_INFO (Transact-SQL)

[!INCLUDEtsql-appliesto-ss2008-asdb-xxxx-xxx-md]

This function returns the context_info value either set for the current session or batch, or derived through use of the SET CONTEXT_INFO statement.

Topic link icon Transact-SQL Syntax Conventions

Syntax

CONTEXT_INFO()  

Return value

The context_info value.

If context_info was not set:

  • In [!INCLUDEssNoVersion] returns NULL.
  • In [!INCLUDEssSDS] returns a unique session-specific GUID.

Remarks

The Multiple Active Result Sets (MARS) feature enables applications to run multiple batches, or requests, at the same time, on the same connection. When one of the MARS connection batches runs SET CONTEXT_INFO, the CONTEXT_INFO function returns the new context value, when the CONTEXT_INFO function runs in the same batch as the SET statement. If the CONTEXT_INFO function runs in one or more of the other connection batches, the CONTEXT_FUNCTION does not return the new value unless those batches started after completion of the batch that ran the SET statement.

Permissions

Requires no special permissions. The following system views store the context information, but querying these views directly requires SELECT and VIEW SERVER STATE permissions:

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

Examples

This simple example sets the context_info value to 0x1256698456, and then uses the CONTEXT_INFO function to retrieve the value.

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

See also

SET CONTEXT_INFO (Transact-SQL)