Select p/ retornar se uma Trigger esiste
13/01/2006
0
Gostaria de saber como faço um select no SQL Server 2000
para retornar se uma trigger já existe na tabela que eu indicar.
Eu sei trazer as Tabelas, Nomes de Campo, Views e Stored Procedure
mas Trigger não estou conseguindo fazer.
Pessoal, por favor me ajudem!
Desde já, agradeço a atenção!
Obrigado! :)
Marcioih
Posts
16/01/2006
Viniciusnunes
segue o script para ajudar vc.
declare @NomeTrigger varchar(50)
declare @NomeTabela varchar(50)
set @NomeTrigger = ´TRIGGER_TABELA´
set @NomeTabela = ´NOME_TABELA´
SELECT so.id,
so.name,
so.xtype,
sot.id,
sot.name,
sot.xtype
FROM sysobjects so , --PROCURA PELA TABELA
sysobjects sot -- PROCURA PELA TRIGER
WHERE
so.name = @NomeTabela
and so.xtype = ´U´
and so.deltrig is not null
and so.instrig is not null
and so.updtrig is not null
and sot.ID = case when so.deltrig is not null then so.deltrig
when so.instrig is not null then so.instrig
when so.updtrig is not null then so.updtrig
end
and sot.xtype = ´TR´
and sot.name = @NomeTrigger
Obs : Depois que vc resolver o seu problema tente enteder o que eu fiz.
Boa Sorte
Se precisar estou as ordens.
24/01/2006
Emerson Nascimento
select * from dbo.sysobjects where parent_obj = object_id(N´[dbo].[NomeDaSuaTabela]´) and (OBJECTPROPERTY(id, N´IsTrigger´) = 1)
para saber se há [b:d398fab040]uma trigger específica[/b:d398fab040] na tabela:
select * from dbo.sysobjects where id = object_id(N´NomeDaSuaTrigger´) and parent_obj = object_id(N´[dbo].[NomeDaSuaTabela]´) and (OBJECTPROPERTY(id, N´IsTrigger´) = 1)
Clique aqui para fazer login e interagir na Comunidade :)