Bonsoir
voila ma fonction avec laquelle je remplie une table que je vaus utiliser par la suite dans un trigger
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
CREATE OR REPLACE function remplir_table(id_p VARCHAR2)
return varchar2 
IS
PRAGMA AUTONOMOUS_TRANSACTION;
ok varchar(20):='ok';
BEGIN
insert into copie select * from personnes  where id_personne = id_p;
return ok;
END;
a l'execution , ca genere une erreur du type:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
ORA-06519: transaction autonome active dÚtectÚe et annulÚe
ORA-06512: Ó "UNICAMPUSFLAM.REMPLIR_TABLE", ligne 9
je sais plus quoi faire , et sans pragma ca crée des prob lors de l'execution du trigger
voila le trigger :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
CREATE OR REPLACE TRIGGER trigger_photo AFTER UPDATE OR INSERT ON PERSONNES
FOR EACH ROW
DECLARE 
res varchar(20);
BEGIN
 
 
 res:= remplir_table (:new.id_personne);
update personnes@exportsynchrone set stockage_photo = ( select stockage_photo from copie where id_personne = :new.id_personne) where id_personne = :new.id_personne;
END ;