SQL Server’da Trigger Olup Olmadığını Kontrol Ederek Trigger Drop Etmek

Herkese merhaba,

Bu yazıda SQL Server’da bir trigger olup olmadığını kontrol ederek trigger drop etmek hakkında bilgi vereceğim.

SQL Server’da bazı durumlarda trigger’ın olup olmadığını kontrol ederek drop etmek isteyebiliriz.

Aşağıdaki kod yardımıyla bu işlemi rahatlıkla yapabilirsiniz.

Ben üç adet yöntem göstereceğim. Hepsi ile aynı sonucu alacaksınız.

--Örnek tablo oluşturulması 

CREATE TABLE OrnekTablo
(
    Id INT PRIMARY KEY IDENTITY(1, 1)
);

--Örnek oluşturulmuş tablo için trigger oluşturulması 

CREATE TRIGGER Deneme
ON dbo.OrnekTablo
FOR INSERT
AS
BEGIN
    PRINT 'Deneme';
END;

--Yöntem 1 : Trigger olup olmadığını kontrol ederek trigger drop etmek 

IF EXISTS
(
    SELECT *
    FROM sys.objects
    WHERE name = N'Deneme'
          AND type = 'TR'
)
BEGIN
    DROP TRIGGER dbo.Deneme;
    PRINT 'Trigger Kaldırıldı';
END;

--Yöntem 2 : Trigger olup olmadığını kontrol ederek trigger drop etmek 

IF EXISTS
(
    SELECT *
    FROM sys.objects
    WHERE object_id = OBJECT_ID(N'dbo.Deneme')
          AND type = 'TR'
)
BEGIN
    DROP TRIGGER dbo.Deneme;
    PRINT 'Trigger Kaldırıldı';
END;

--Yöntem 3 : Trigger olup olmadığını kontrol ederek trigger drop etmek 

IF (OBJECT_ID(N'dbo.Deneme') IS NOT NULL)
BEGIN
    DROP TRIGGER dbo.Deneme;
    PRINT 'Trigger Kaldırıldı';
END;

Triggeri oluşturduktan sonra 3 yöntemden herhangi birini çağıralım. Aşağıdakine benzer bir sonuç alacaksınız.

SQL Server’da Trigger Olup Olmadığını Kontrol Ederek Trigger Drop Etmek

Görüldüğü üzere triggerın olup olmadığı kontrol edilerek trigger drop edilmiş oldu.

Herkese çalışma hayatında ve yaşamında başarılar kolaylıklar.

107 Kez Okundu

Yavuz Selim Kart

Yazılım ve veri tabanında bildiklerimi anlatmaya gayret ediyorum. Halen birçok programlama dili üzerinde araştırmalar yaparak kendimi geliştiriyorum. Bunlar haricinde Grafik Tasarım ve Wordpress konularına da ilgim bulunmakta. SEO ve Sosyal medya yönetimleri hakkında da bilgim mevcuttur. Kısaca çok çalışmayı seven azimli biriyim.

You may also like...

Yazı kopyalamak yasaktır!