Désactiver un trigger seulement s'il existe
Bonjour,
Je souhaiterais désactiver un trigger sur certaines bases. Cependant, sur certaines d'entre elle, ce trigger n'existe. Je veux donc n'exécuter l'alter trigger que s'il existe.
J'ai tester le script suivant mais il ne passe pas :
ORA-06550: Ligne 6, colonne 4 :
PLS-00103: Symbole "ALTER" rencontré à la place d'un des symboles suivants :...
Code:
1 2 3 4 5 6 7 8 9
|
declare A VARCHAR2(20);
begin
select rownum object_name into A from dba_objects where object_name='TRG_TTT'and rownum = 1;
if A='TRG_TTT' then
begin
ALTER TRIGGER TRG_TTT DISABLE;
end if;
end; |
Quelqu'un a-t-il une idée pour résoudre ce problème ?
et produire l'équivalent du script SQL Server suivant :
Code:
1 2 3
|
if Exists(select * from dbo.sysobjects where id = object_id(N'[dbo].[TRG_TTT]') and OBJECTPROPERTY(id, N'IsTrigger') = 1)
ALTER TABLE TTT DISABLE TRIGGER TRG_TTT; |