Triger sur deux tables

Fermé
tafistar Messages postés 6 Date d'inscription jeudi 18 juillet 2013 Statut Membre Dernière intervention 18 juillet 2013 - 18 juil. 2013 à 12:41
Thorak83 Messages postés 1051 Date d'inscription jeudi 20 juin 2013 Statut Membre Dernière intervention 22 décembre 2017 - 18 juil. 2013 à 18:27
Bonjour.
g une BD de gestion de carburant avec 4 tables;
camion(id,numero,chauffeur)
carburant(id,consommation,date,id_camion)
cuve(id,index,sortie,date)
consommation(id,id_camion,carb_conso,carb_sortie,id_cuve)

maintenant apres avoir ajoute une consommation sur la table carburant, la valeur de l'index du cuve doit changer,elle sera égal a la valeur ancienne + la nouvelle valeur de consommation creer ce trigger:
 CREATE
    TRIGGER apres_servir_camion AFTER INSERT
    ON carburant
    FOR EACH ROW BEGIN
	UPDATE cuve SET index=new.index+new.consommation where id_cuve=new.id_cuve;
    END$$
DELIMITER ;


jai l'erreur suivante: Erreur de syntaxe près de 'index=new.index+new.consommation where id_cuve=new.id_cuve;
END'.
je sais pas si consommation qui se trouve sur la table carburant ne doit pas etre utilisé ici.
Merci de votre aide

1 réponse

Thorak83 Messages postés 1051 Date d'inscription jeudi 20 juin 2013 Statut Membre Dernière intervention 22 décembre 2017 156
Modifié par Thorak83 le 18/07/2013 à 14:32
Bonjour,

j'aurais plutôt fait cela

 CREATE
    TRIGGER apres_servir_camion AFTER INSERT
    ON carburant
    FOR EACH ROW BEGIN
 UPDATE cuve SET index=index+new.consommation where id_cuve=new.id_cuve;
    END$$
DELIMITER ;
0
tafistar Messages postés 6 Date d'inscription jeudi 18 juillet 2013 Statut Membre Dernière intervention 18 juillet 2013
18 juil. 2013 à 17:37
jai plus l'erreur mais ca fonctionne pas; lindex est tjrs a 0
0
Thorak83 Messages postés 1051 Date d'inscription jeudi 20 juin 2013 Statut Membre Dernière intervention 22 décembre 2017 156
18 juil. 2013 à 17:38
faire test avec
UPDATE cuve SET index=123 where id_cuve=new.id_cuve;
0
tafistar Messages postés 6 Date d'inscription jeudi 18 juillet 2013 Statut Membre Dernière intervention 18 juillet 2013
18 juil. 2013 à 17:58
non plus, pas de mise a jour
0
tafistar Messages postés 6 Date d'inscription jeudi 18 juillet 2013 Statut Membre Dernière intervention 18 juillet 2013
18 juil. 2013 à 18:01
jai cet erreru quand je met new.id_cuve
Champ 'id_cuve' inconnu dans NEW
0
Thorak83 Messages postés 1051 Date d'inscription jeudi 20 juin 2013 Statut Membre Dernière intervention 22 décembre 2017 156
Modifié par Thorak83 le 18/07/2013 à 18:28
a qqe chose que je comprend pas. Vous dites "apres avoir ajoute une consommation sur la table carburant,". La consommation est ajouitée a la table consommation. c sur cette table qu'il doit y a voir le trigger (table qui contient id_curve). C quoi la difference entre table consommation et table carburant
0