Bonjour,

J'ai sur mes tables un trigger pour l'auto_increment:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
CREATE   SEQUENCE SEQ_C_PORT		INCREMENT BY 1 START WITH 1 NOMAXVALUE NOCYCLE CACHE 10;
 
CREATE   TRIGGER TRIG_C_PORT BEFORE INSERT ON C_PORTFOLIO FOR EACH ROW 
	BEGIN
		SELECT SEQ_C_PORT.NEXTVAL INTO :NEW.C_PORT_CODE FROM DUAL;
	END;
/
Et un trigger de replication:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
CREATE TRIGGER REPLIC_C_PORT BEFORE UPDATE OR INSERT ON C_PORT
FOR EACH ROW
BEGIN
INSERT INTO C_PORT@HISTO.ORDI5 
	(PORT_CODE, 
	PORT_NAME, 
	PORT_CURRENCY, 
	CLIENT_TEL, 
	CLIENT_CODE)
	VALUES 
	(:NEW.PORT_CODE, :NEW.PORT_NAME, :NEW.PORT_CURRENCY, :NEW.CLIENT_TEL, :NEW.CLIENT_CODE);
END;
/
L'enchainement de ces deux triggers provoquent une erreur de table mutante venant du trigger de replication (le deuxieme).

Existe t'il un moyen de passer outre ce probleme ?
S'agit il d'un mauvais emploi de :NEW ?
Le but etant d'avoir deux base totalement synchronisées, existe t'il un autre moyen d'effectuer cela ?