Bonjour,

Je souhaite créer un trigger qui surveille les update sur une table et qui en cas d'update met à jour une colonne de cette même table. Voci mon trigger

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
CREATE OR REPLACE TRIGGER "ASVP2".TREQUEST_UPDATE BEFORE UPDATE ON TREQUEST FOR EACH ROW
DECLARE
 boVal int;
 idxVal int;
BEGIN
  boVal := :old.bo;
  idxVal := :old.bo;
IF boVal = 0 THEN
  UPDATE TREQUEST SET BO = 2 WHERE IDXREQUEST = idxVal;
END IF;
END;
/
SHOW ERRORS TRIGGER TREQUEST_UPDATE;
Quand je fais un update sur ma table j'ai l'erreur suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
The following error has occurred:
 
ORA-04091: table ASVP2.TREQUEST en mutation, déclencheur/fonction ne peut la voir
ORA-06512: à "ASVP2.TREQUEST_UPDATE", ligne 8
ORA-04088: erreur lors d'exécution du déclencheur 'ASVP2.TREQUEST_UPDATE'
 
 
 
 
Details:
ORA-04091: table ASVP2.TREQUEST en mutation, déclencheur/fonction ne peut la voir
ORA-06512: à "ASVP2.TREQUEST_UPDATE", ligne 8
ORA-04088: erreur lors d'exécution du déclencheur 'ASVP2.TREQUEST_UPDATE'
Quelqu'un à déjà eu ce cas ?

Merci pour votre aide