Share via


set CONTEXT_INFO (Transact-sql)

En fazla 128 bayt ikili bilgilerin geçerli oturumu veya bağlantı ile ilişkilendirir.

Konu bağlantısı simgesi Transact-SQL Sözdizim Kuralları

Sözdizimi

SET CONTEXT_INFO { binary_str | @binary_var }

Bağımsız değişkenler

  • binary_str
    Olan bir binarysabiti, ya da örtük olarak dönüştürülebilir için sabit binary, geçerli oturumu veya bağlantı ile ilişkilendirmek.

  • **@**binary_var
    Olan bir varbinaryya binarygeçerli oturumu veya bağlantı ile ilişkilendirmek için bir içerik değeri tutan değişken.

Açıklamalar

Geçerli oturum için bağlam bilgilerini almak için tercih edilen yol CONTEXT_INFO işlevini kullanmaktır. Oturum bağlam bilgileri saklı da CONTEXT_INFO aşağıdaki sistem görünümlerde sütunlar:

  • sys.dm_exec_requests

  • sys.dm_exec_sessions

  • sys.sysprocesses

set CONTEXT_INFO kullanıcı tanımlı bir işlev belirtilemez. Değerleri tutan Gösterim için boş değerlere izin vermediğinden CONTEXT_INFO set null değerine sağlayamazsınız.

set CONTEXT_INFO ifadeler sabit ya da değişken isimleri dışında kabul etmez. İşlev çağrısının sonucu bağlam bilgilerini ayarlamak için işlev çağrısının sonucunu eklemeniz gerekir bir binaryya varbinarydeğişkeni.

set CONTEXT_INFO bir saklı yordam veya tetikleyiciyi keserken, aksine diğer set deyimlerinde sonra saklı yordam bağlam bilgilerini yeni değere devam veya tetikleyici tamamlandı.

Örnekler

A.Sabit kullanarak bağlam bilgilerini ayarlama

Aşağıdaki örnekte gösterilmiştir SET CONTEXT_INFOdeğerini ayarlayarak ve sonuçları görüntüleme. Bu sorgulama Not sys.dm_exec_sessionsCONTEXT_INFO işlevi kullanılarak yok Oysa seçin ve VIEW server state izni gerektirir.

SET CONTEXT_INFO 0x01010101
GO
SELECT context_info 
FROM sys.dm_exec_sessions
WHERE session_id = @@SPID;
GO

SET CONTEXT_INFO 0x01010101
GO
SELECT context_info 
FROM sys.dm_exec_sessions
WHERE session_id = @@SPID;
GO

B.Fonksiyon kullanarak bağlam bilgilerini ayarlama

Nerede işlevi değeri gereken ilk yer de içerik değeri ayarlamak için ilgili bir işlevinin çıktısı kullanma aşağıdaki örnekte gösterilmiştir bir binarydeğişkeni.

DECLARE @BinVar varbinary(128)
SET @BinVar = CAST(REPLICATE( 0x20, 128 ) AS varbinary(128) )
SET CONTEXT_INFO @BinVar

SELECT CONTEXT_INFO() AS MyContextInfo;
GO

DECLARE @BinVar varbinary(128)
SET @BinVar = CAST(REPLICATE( 0x20, 128 ) AS varbinary(128) )
SET CONTEXT_INFO @BinVar

SELECT CONTEXT_INFO() AS MyContextInfo;
GO

Ayrıca bkz.

Başvuru

Deyimiyle (Transact-sql) bırak

sys.dm_exec_requests (Transact-sql)

bkz:sys.dm_exec_sessions (Transact-sql)

CONTEXT_INFO (Transact-sql)