Trigger, table en mutation
Bonjour à tous, j'ai tenté de faire un trigger afin de créer un identifiant permanent :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
CREATE OR REPLACE TRIGGER IPP_Creation
AFTER INSERT on DMA
FOR EACH ROW
DECLARE
DCrea number;
Pat number;
BEGIN
SELECT EXTRACT(YEAR FROM Date_Creation) INTO Dcrea FROM DMA;
SELECT PatientID INTO Pat FROM DMA;
UPDATE Patient
SET IPP = CONCAT(Dcrea, IPPC.nextval)
WHERE Pat = Patient.ID;
END;
/ |
Cependant une erreur est apparu lorsque j'ai tenté d'insérer dans la table DMA
Code:
1 2 3
| ORA-04091: la table VALENTIN.DMA est en mutation ; le déclencheur ou la fonction ne peut la voir
ORA-06512: à "VALENTIN.IPP_CREATION", ligne 5
ORA-04088: erreur lors d'exécution du déclencheur 'VALENTIN.IPP_CREATION' |
J'ai beau cherché et je parviens pas à voir comment est-ce que je peu régler le problème :(.
Merci d'avance pour votre aide !