Bonjour,
Voici mon problème:
La situation:
- j'ai une procédure stockée Y qui fait INSERT ou UPDATE dans une table X
- je veux modifier un champ de X (libellé) si son identifiant est modifié lors de la procédure Y
- pour éviter l'erreur de table mutante, j'ai créé 2 triggers:
1) un trigger de niveau LIGNE qui mémorise chacune des lignes modifiées de X avec un BEFORE or UPDATE on X FOR EACH ROW
Il exécute la mémorisation avant la modification de chaque ligne
2) un trigger de niveau INSTRUCTION avec un AFTER or UPDATE on X
Il autorise l'accés à la table mutante X au travers de la procédure Z créée pour faire l'UPDATE sur le libellé de X
Résultat:
Au chargement de X j'ai l'erreur: ORA-00036: maximum number of recursive SQL levels (string) exceeded
Il y a un problème de récursivité. Comment le résoudre ?
Merci d'avance pour toute suggestion.
Partager