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 :...
Quelqu'un a-t-il une idée pour résoudre ce problème ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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;
et produire l'équivalent du script SQL Server suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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;
Partager