- mutating table > j'm'arrache les ch'veux [Oracle triggers] - SQL/NoSQL - Programmation
Marsh Posté le 16-11-2004 à 15:29:03
c'est normal que tu te tapes cette erreur: ton trigger, qui se déclenche sur des insert dans une table A, fait lui meme des select sur cette meme table A.
Pour t'en sortir et éviter cette erreur classique de table en mutation, soit tu réécris ton trigger (si c'est possible), soit tu passes par des tables intermédiaires.
Marsh Posté le 16-11-2004 à 15:41:37
ben le probleme c'est la recursivité sur une meme table.
donc reecrire le trigger > pour mettre quoi dedans ?
tables intermédiaires > pour naviguer en permanence entre deux tables ?
Marsh Posté le 16-11-2004 à 11:31:23
jour'
mon probleme : j'ai une table fonctions qui contient des fonctions et des meta fonctions (fonctions de fonctions).
quand on modifie la propriété acces_internet de la meta fonction, ca doit mettre a jour l'acces internet des fonctions filles.
donc je fais mon trigger after insert sur la colonne et la....
- je suis passé pour le trigger > ca chie
- trigger qui appelle une procédure > ca chie
sachant qu'en méthodes j'ai essayé d'utiliser :
- le pragma autonomous_transaction
- l'ignorage de l'exception.
mon dernier bout de code ressemble a ca : (le trigger ne fait qu'appeller cette procédure) et bien évidemment, ca marche pas (ca modofie qu'une ligne, ou alors rien du tout etc....)