SQL Server Context_Info Fonksiyonu
Herkese merhaba,
Bu yazıda size SQL Server Context_Info Fonksiyonundan bahsedeceğim.
SQL Server’da Context_Info fonksiyonu geçerli oturum için ayarlanan Context_Info değerini döndüren bir fonksiyondur. Bu değer Set Context_Info ile atanır. Örnek kullanımı inceleyelim.
SET CONTEXT_INFO 0x1256698456; GO SELECT CONTEXT_INFO(); GO
Her ne kadar çok sade olarak anlatsam da çok kullanışlı bir yapıdır. Kullanım şekillerine örnek verelim.
- Bir tabloya sadece belirlediğimiz prosedür üzerinden insert yapılmasını sağlayabiliriz
- Prosedür, Fonksiyon veya Trigger gibi bir nesne içerisinde kullanıcı tanımlı yönlendirme yapabiliriz.
Konuyu anlamak adına aşağıda yaptığım ek örneğide inceleyin.
--Tanımlamaları yapıyoruz. Toplama işlemi yapılacak DECLARE @IslemYap varbinary(128) SELECT @IslemYap = CAST('ToplamaIslemi' as varbinary(128)) --Context_Info tanımlamasını yapıyoruz. DECLARE @Kontrol varbinary(128) SET @Kontrol = CONVERT(varbinary(128), 'ÇarpmaIslemi') SET CONTEXT_INFO @Kontrol --Girilen tanımlama doğru ise çalışacak yanlış ise çalışmayacak IF @IslemYap = @Kontrol BEGIN PRINT 'Doğru çalıştı' END ELSE BEGIN PRINT 'Yanlış çalıştı' END
Yukarıda ilk olarak IslemYap adında bir değişken tanımlaması yaptık. Bu tanımlamayı varbinary(128)’e cast ettik yani dönüştürdük ve gerekli değeri set ettik. Sonrasında Kontrol adında bir değişken oluşturduk. Bu değişken içerisine değerimizi set ettik. Daha sonra bu değişkeni kontrol değişkeni olarak atadık. Bu işlemi yaparken Context_Info fonksiyonunu kullandık. Eğer IslemYap değişkeni kontrol değişkenimiz ile eşleşiyorsa doğru çalıştı yazacak değilse yanlış çalıştı yazacak.
Herkese çalışma hayatında ve yaşamında başarılar kolaylıklar.