-- Kullanıcının tablo üzerinde güncelleme yaptığında
-- değişiklik tarihi kolonunun otomatik olarak
-- güncelleme yapıldığı tarihi alınmasının sağlanması
-- için yazılan update trigger örneği
Örnek Tablo kolonları:
KisiID, ZiyaretID,DegisiklikTarihi CREATE TRIGGER trigger_Guncellendi
ON Kisiler
for UPDATE
as
declare @id int
select @id = ziyaretID from deleted -- güncelleme için kayıt önce deleted (silinenler)
-- tablosuna gönderilir ardından da kayıt insert edilir
UPDATE Kisiler
SET degisiklikTarihi = getdate() --güncelleme yapıldığı tarihi db ye eklemiş olduk
WHERE ziyaretID=@id
--Kullanıcının birden fazla kayıt silmesini engellemek için yazılan bir delete trigger örneği
CREATE TRIGGER trigger_Silindi --Trigger adı
ON Kisiler --İlgili Tablo
for DELETE --Oluşturulacak trigger türü
as
declare @sayi int
select @sayi = count(*) from deleted --Silme işlemi için deleted (Silinmişler)
--tablosuna gönderilen kayıt sayısı
if @sayi>1
begin
rollback transaction
end