SQL Trigger
09 Haz 2012 Yorum bırakın
Merhaba bu makalemde sizlere SQL Trigger Fonksiyonundan bahsedeceğim. Trigger kelimesinin Türkçe karşılığı “Tetikleyici”dir. Trigger oluşturduğunuz tabloda yapılan Insert, Delete, Update gibi işlemleri otomatik olarak algılar ve yapmasını istediğiniz işlemi otomatik olarak yapar. Trigger Select deyiminde çalışmaz bunun nedeni Select deyimi kullanıldığında tabloda herhangi bir değişiklik olmaz. Bu nedenle select deyimi Triggerlarda kullanılmaz. Triggerlar tabloların altında bulunan Trigger klasöründe bulunur.
2 çeşit trigger vardır. Bunlar “After” işlem yapılmadan önce kullanmak için ve “Instead Of” işlem yapıldıkdan sonra kullanılır. Şimdi kullanımına bakalım.
CREATE TRİGGER triggerAdi ON tabloAdi AFTER INSERT AS yapılacak işlem
Şeklinde kullanılır. “After” yerine “Instead of” da yazılabilir. Şimdi birkaç örnekle konuyu kavrayalım.
CREATE TRİGGER triggerAdi ON tabloAdi INSTEAD OF INSERT AS declare @id int declare @isim nvarchar select @id = İD, @isim = İsim from inserted UPDATE ikincitabloAdi SET @isim = İsim where @id = İD
Burada tabloya kayıt eklendiği zaman ikinci tablodaki isim kısmındaki alanı değiştiriyor.