PLSQL : Désactiver tous les triggers
Résolu
pitimick
Messages postés
24
Statut
Membre
-
pitimick Messages postés 24 Statut Membre -
pitimick Messages postés 24 Statut Membre -
Bonjour,
je souhaite créer une procédure qui désactive tous les triggers sans que je connaisse le nom des tables et sans avoir à lister les triggers un par un.
J'ai essayé un script du genre
DECLARE
CURSOR selectTrigger IS select table_name FROM USER_TRIGGERS;
Requete VARCHAR2(256);
nomTable VARCHAR2(30);
BEGIN
FOR ligne IN selectTrigger
LOOP
nomTable := ligne.table_name;
Requete := 'alter table ' || nomTable || ' disable all trigger';
EXECUTE IMMEDIATE Requete;
END LOOP;
END;
/
saurez vous me dire pourquoi il ne fonctionne pas? c'est en voyant divers forum que j'ai décidé de taper sur la table USER_TRIGGERS et de faire du sql dynamique avec EXECUTE IMEDIATE
merci d'avance
je souhaite créer une procédure qui désactive tous les triggers sans que je connaisse le nom des tables et sans avoir à lister les triggers un par un.
J'ai essayé un script du genre
DECLARE
CURSOR selectTrigger IS select table_name FROM USER_TRIGGERS;
Requete VARCHAR2(256);
nomTable VARCHAR2(30);
BEGIN
FOR ligne IN selectTrigger
LOOP
nomTable := ligne.table_name;
Requete := 'alter table ' || nomTable || ' disable all trigger';
EXECUTE IMMEDIATE Requete;
END LOOP;
END;
/
saurez vous me dire pourquoi il ne fonctionne pas? c'est en voyant divers forum que j'ai décidé de taper sur la table USER_TRIGGERS et de faire du sql dynamique avec EXECUTE IMEDIATE
merci d'avance