SQL Server Kontröllü Triger Oluşturma

Sql server da bir triger var mı diye kontrol edip var ise update yok sa create işlemini gerçekleştiren script

 IF NOT EXISTS(select * FROM sys.triggers where name = 'trg_HarSil')
BEGIN
    EXEC sp_executesql N' 
CREATE TRIGGER [dbo].[trg_HarSil] ON [dbo].[STOKHAREKET] FOR DELETE AS  
BEGIN SET NOCOUNT ON;
	DECLARE @TRGID INT
    SELECT @TRGID = deleted.ID FROM deleted
    delete from STOKHAREKET WHERE TRGID = @TRGID

END
'
END 
ELSE
BEGIN
      EXEC sp_executesql N'  
ALTER TRIGGER [dbo].[trg_HarSil] ON [dbo].[STOKHAREKET] FOR DELETE AS  
BEGIN SET NOCOUNT ON;
	DECLARE @TRGID INT
    SELECT @TRGID = deleted.ID FROM deleted
    delete from STOKHAREKET WHERE TRGID = @TRGID

END
'
END

yukarıdaki triger da STOKHAREKET tablosuna başka bir trigger ile kayıt edilen veriler bağlı hareket silindiğinde otomatik olarak trigger oluşmuş hareketleri temizler