hello les gens
bien qu'avoir parcouru ceci j'avoue toujours ne pas avoir saisi pourqu'oi j'ai cette exception dite de la table mutante.
je vous livre mon code en espérant que quelques âme charitables sauront m'éclairer.
deux tables:
->vente
->rejet
mon trigger:
et au niveau de l'execution je fais unCode:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 CREATE OR REPLACE TRIGGER trg BEFORE DELETE -- avant supression. ON t_vente FOR EACH ROW -- pour chaque ligne. BEGIN dbms_output.put_line('le declencheur intervient'); MERGE INTO t_rejets a USING t_vente b ON ( a.item_key = b.item_key ) WHEN MATCHED THEN UPDATE SET... WHEN NOT MATCHED THEN INSERT(item_key...) VALUES (:OLD.item_key,... ) END trg;
le "delete" passe bien, l'appel du declencheur se fait mais pas les INSERT et/ou UPDATE sur la table t_rejets et j'ai un zoli msg d'exception de la table mutante (ORA-04091) en guise de resultatCode:
1
2
3 DELETE FROM t_vente;
merci pour toutes vos contributions