Bonjour,
J'essaye de créer un trigger qui mettrai à jour un champ d'une table suite à la mise à jour de cette dernière.
Je me retrouve logiquement avec une erreur ORA-04091.
Pour contourner le problème j'ai précisé les noms des champs mis à jour et à mettre à jour.
Exemple :
J'ai toujours la même erreur Oracle.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 CREATE OR REPLACE TRIGGER COLLEGE_TR AFTER UPDATE OF COMMUNE_INSEE ON CGEDUCATION.EDUDATA_COLLEGE REFERENCING NEW AS NEW OLD AS OLD FOR EACH ROW DECLARE BEGIN UPDATE TABLE_COLLEGE SET CANTON_INSEE = ( SELECT INSEE_CANT FROM AutreSchéma.Table_COM WHERE INSEE_COM = :NEW.COMMUNE_INSEE) WHERE ID_COLLEGE = :OLD.ID_COLLEGE; END; /
Mais je ne comprends pas pourquoi car mon trigger fonctionne ainsi :
lorsque le code insee de la commune est mis à jour, alors je demande la mise à jour du code insee du champ canton.
En précisant les colonnes je pensais m'en sortir mais non.
Quelqu'un saurait-il me dire pourquoi ça ne fonctionne pas ?
Merci de votre aide.
Partager