makaleler / Veritabanı / SQL Before insert trigger

SQL Before insert trigger

11.08.2017 11:41:29

SQL Before insert trigger'ı nasıl yazılır?

Merhabalar Arkadaşlar, (Not:Lütfen öneri ve sorularınızı yorum olarak atınız. Teşekkürler şimdiden)

Bu yazımda veritabanındaki bir tabloda bir alanda değişiklik olduğunda farklı bir alana bir değişken insert yada update yapmak istediğimizde nasıl yol izlemeliyizin cevabı niteliğinde bir paylaşım olacaktır. Bu işlemi trigger yazarak yapabiliriz. İşlem hangi tabloyla ilişkili ise o tabloya ait trigger oluşturarak başlayalım. Sonrasında işlem insert yada update işleminden önce ise BEFORE INSERT TRIGGER, eğer insert yada update işleminden sonra gerçekleşecek ise AFTER INSERT TRIGGER yazmalıyız. Ben işlemimi işlem gerçekleşmeden önce gerçekleştireceğim için aşağıda BEFORE UPDATE TRIGGER örneği paylaştım. Bunu değiştirerek kendi işleminize uygun revize edebilirsiniz.



USE [DATABASENAME]
GO
/****** Object:  Trigger [dbo].[TRIGGER_ADI]    Script Date: Yazılış tarihi ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO


ALTER TRIGGER [dbo].[TRIGGER_ADI] ON [dbo].[TABLO_ADI] AFTER UPDATE
AS
BEGIN
	DECLARE @DEGISEN_ALAN_ADI INT, @ID INTEGER

	SELECT @DEGISEN_ALAN_ADI = I.DEGISEN_ALAN_ADI , @ID = I.ID FROM INSERTED I

	IF (@DEGISEN_ALAN_ADI = 1) OR (@DEGISEN_ALAN_ADI = 7)
	BEGIN
	  UPDATE PLAKA_DETAY SET TETIKLENECEK_ALAN_ADI= @DEGISEN_ALAN_ADI 
	  WHERE ID = @ID
	END
END

İyi çalışmalar.

yazar okanyurt

Yorumlar

Bu içerik için sizde yorum yapabilirsiniz!
anasayfa | makaleler | haberler | dosyalar | linkler | hakkımızda