Anasayfa » Forum

Trigger İf Insert v...
 
Bildirimler
Hepsini Temizle

Trigger İf Insert ve Update işlemi  

  RSS
erdoganturkmen
(@erdoganturkmen)
Üye

Merhabalar , 

 Haber tablosuna insert işlemi yapılmadan önce güvenlik amacıyla bir alana göndereceğim verinyi kontrol ederek insert yada update işlemini yaptırmak istiyorum. Örneğin ;

INSERT INTO HABER (HABERADI,GUVENLIK)  VALUES ('DENEME','KONTROL')

Insert trigger da GUVENLIK alanını  kontrol ederek ona göre kayıt yapılmasını sağlamak istiyorum. Yazdığım trigger aşağıdaki gibi : 

 

ALTER TRIGGER [dbo].[TRGHABERINSERT] 

   ON  [dbo].[HABER]

   INSTEAD OF  INSERT

AS 

USE [HABER];

SET NOCOUNT ON;

if (inserted.GUVENLIK = 'KONTROL')

begin

INSERT INTO haber

(

HABERBASLIK,

GUVENLIK 

)

VALUES

(

INSERTED.HABERBASLIK,

INSERTED.GUVENLIK

)

end

SET NOCOUNT OFF;

 Ancak aldığım hata aşağıdaki gibidir : 

Msg 154, Level 15, State 1, Procedure TRGHABERINSERT, Line 5

a USE database statement is not allowed in a procedure, function or trigger. 

 

Yardımcı olursanız sevinirim. İyi çalışmalar. 

Alıntı
Gönderildi : 25/01/2013 00:20
Gokhan DOGAN
(@GokhanDOGAN)
Üye

Merhaba

örnek syntax aşağıdaki gibi fakat önerim bunu trigger ile değilde application level'de yapmanız. Bu tabloya insert işleminden önce bi method ile başka tablo'ya başka işlemleri yazdırıp devamını getirebilirsiniz. Böylece trigger gelen her sorguyu dinleyip ayıt etme zamanından db kurtulur.

Ayrıca trigger deadlock'durumlarını da izole debilirsiniz. 

http://msdn.microsoft.com/en-us/library/ms189799.aspx 

CevapAlıntı
Gönderildi : 26/01/2013 15:44
Paylaş: