Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Berlaku untuk:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Database SQL di Microsoft Fabric
Mengaitkan hingga 128 byte informasi biner dengan sesi atau koneksi saat ini.
Sintaks
SET CONTEXT_INFO { binary_str | @binary_var }
Argumen
binary_str
Adalah konstanta biner , atau konstanta yang secara implisit dapat dikonversi ke biner, untuk dikaitkan dengan sesi atau koneksi saat ini.
@binary_var
Adalah variabel varbinary atau biner yang menyimpan nilai konteks untuk dikaitkan dengan sesi atau koneksi saat ini.
Keterangan
Seperti semua SET Pernyataan, SET CONTEXT_INFO memengaruhi sesi saat ini. Cara yang lebih disukai untuk mengambil informasi konteks untuk sesi saat ini adalah dengan menggunakan fungsi tersebut CONTEXT_INFO . Informasi konteks sesi juga disimpan dalam context_info kolom dalam tampilan sistem berikut:
sys.dm_exec_requestssys.dm_exec_sessions-
sys.sysprocesses(tidak digunakan lagi)
SET CONTEXT_INFO tidak dapat ditentukan dalam fungsi yang ditentukan pengguna. Anda tidak dapat menyediakan nilai NULL karena SET CONTEXT_INFO tampilan yang memegang nilai tidak mengizinkan nilai NULL.
SET CONTEXT_INFO tidak menerima ekspresi selain konstanta atau nama variabel. Untuk mengatur informasi konteks ke hasil panggilan fungsi, Anda harus terlebih dahulu menyertakan hasil panggilan fungsi dalam variabel biner atau varbinary .
Saat Anda mengeluarkan SETSET CONTEXT_INFO dalam prosedur atau pemicu tersimpan, tidak seperti dalam pernyataan lain SET , nilai baru yang ditetapkan untuk informasi konteks tetap ada setelah prosedur atau pemicu tersimpan selesai.
Contoh
J. Mengatur informasi konteks dengan menggunakan konstanta
Contoh berikut menunjukkan SET CONTEXT_INFO dengan mengatur nilai dan menampilkan hasilnya. Kueri sys.dm_exec_sessions memerlukan izin SELECT dan VIEW SERVER STATE, sedangkan menggunakan CONTEXT_INFO fungsi tidak.
SET CONTEXT_INFO 0x01010101;
GO
SELECT context_info
FROM sys.dm_exec_sessions
WHERE session_id = @@SPID;
GO
B. Mengatur informasi konteks dengan menggunakan fungsi
Contoh berikut menunjukkan penggunaan output fungsi untuk mengatur nilai konteks, di mana nilai dari fungsi harus terlebih dahulu ditempatkan dalam variabel biner .
DECLARE @BinVar varbinary(128);
SET @BinVar = CAST(REPLICATE( 0x20, 128 ) AS varbinary(128) );
SET CONTEXT_INFO @BinVar;
SELECT CONTEXT_INFO() AS MyContextInfo;
GO