synchroniser des tables avec un trigger

synchroniser des tables avec un trigger - SQL/NoSQL - Programmation

Marsh Posté le 17-11-2010 à 00:32:12    

Bonjour,
je débute dans l'utilisation des triggers Mysql.
 
Le contexte:
3 bases de données, dans chacune des bdd , une table 'product' avec une colonne 'quantity'.
 
Le but:
La valeur 'quantity' de chaque table 'product' doivent être synchronisée.
exemple: si update de la table db1.product, mises à jour des tables db2.product, db3.product. Si update de la table db2.product, mises à jour des tables db1.product, db3.product.
 
 
J'ai ajouter un trigger sur la table db1.product:
 
delimiter $$
CREATE TRIGGER SYNCSTOCK
AFTER UPDATE ON db1.product
IF (NEW.reference != "" ) THEN
FOR EACH ROW
BEGIN
UPDATE db2.product SET quantity = NEW.quantity WHERE reference = NEW.reference;
UPDATE db3.product SET quantity = NEW.quantity WHERE reference = NEW.reference;
END IF;
END$$
delimiter ;
 
 
ma question, si j'adapte le même trigger sur les autres tables comme ceci:
 
delimiter $$
CREATE TRIGGER SYNCSTOCK
AFTER UPDATE ON db2.product
IF (NEW.reference != "" ) THEN
FOR EACH ROW
BEGIN
UPDATE db1.product SET quantity = NEW.quantity WHERE reference = NEW.reference;
UPDATE db3.product SET quantity = NEW.quantity WHERE reference = NEW.reference;
END IF;
END$$
delimiter ;
 
 
delimiter $$
CREATE TRIGGER SYNCSTOCK
AFTER UPDATE ON db3.product
IF (NEW.reference != "" ) THEN
FOR EACH ROW
BEGIN
UPDATE db1.product SET quantity = NEW.quantity WHERE reference = NEW.reference;
UPDATE db2.product SET quantity = NEW.quantity WHERE reference = NEW.reference;
END IF;
END$$
delimiter ;
 
 
, cela va t-il engendrer une boucle infinie ? si oui comment puis-je contourner le problème ?
 
merci


Message édité par dev74 le 17-11-2010 à 00:32:35
Reply

Marsh Posté le 17-11-2010 à 00:32:12   

Reply

Marsh Posté le 17-11-2010 à 16:04:31    

help please !!!

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed