SESSION_CONTEXT (T-SQL)
Berlaku untuk: SQL Server 2016 (13.x) dan yang lebih baru Azure SQL Database Azure SQL Managed Instance Titik akhir analitik Azure Synapse Analytics SQL di Microsoft Fabric Warehouse di Microsoft Fabric
Mengembalikan nilai kunci yang ditentukan dalam konteks sesi saat ini. Nilai diatur dengan menggunakan prosedur sp_set_session_context (Transact-SQL).
Sintaks
SESSION_CONTEXT(N'key')
Argumen
'kunci'
Kunci (ketik sysname) dari nilai yang diambil.
Jenis Hasil
aql_variant
Tampilkan Nilai
Nilai yang terkait dengan kunci yang ditentukan dalam konteks sesi, atau NULL jika tidak ada nilai yang ditetapkan untuk kunci tersebut.
Izin
Setiap pengguna dapat membaca konteks sesi untuk sesi mereka.
Keterangan
perilaku MARS SESSION_CONTEXT mirip dengan CONTEXT_INFO. Jika batch MARS menetapkan pasangan kunci-nilai, nilai baru tidak akan dikembalikan dalam batch MARS lainnya pada koneksi yang sama kecuali dimulai setelah batch yang menetapkan nilai baru selesai. Jika beberapa batch MARS aktif pada koneksi, nilai tidak dapat diatur sebagai "read_only." Ini mencegah kondisi ras dan non-determinisme tentang nilai mana yang "menang."
Contoh
Contoh sederhana berikut mengatur nilai konteks sesi untuk kunci user_id
ke 4, lalu menggunakan fungsi SESSION_CONTEXT untuk mengambil nilai.
EXEC sp_set_session_context 'user_id', 4;
SELECT SESSION_CONTEXT(N'user_id');
Lihat Juga
sp_set_session_context (T-SQL)
CURRENT_TRANSACTION_ID (T-SQL)
Keamanan Tingkat Baris
CONTEXT_INFO (T-SQL)
SET CONTEXT_INFO (Transact-SQL)