Trigger sur un INSERT pour incrémenter un champ
Bonjour,
J'ai une table contrat avec 3 champs : id_contrat, #id_projet, avenant.
L'avenant est égal à 0 lorsque c'est le premier contrat d'un projet et doit s’incrémenter à chaque fois que je crée un nouveau contrat.
J'ai donc essayé de créer un trigger mais mon WorkBench me donne l'erreur suivante :
Citation:
Error Code: 1064. You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '.avenant = temp+1 ;
END' at line 12
et voici le trigger en question :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| USE bqp;
DELIMITER //
-- ============================================================================
-- TRIGGER CONTRAT
-- ============================================================================
CREATE TRIGGER Ajout_contrat_avenant
BEFORE INSERT ON bqp.Contrat
FOR EACH ROW
BEGIN
DECLARE temp INTEGER;
SELECT MAX(avenant) FROM bqp.Contrat WHERE Contrat.id_projet = NEW.id_projet INTO temp;
New.avenant = temp+1 ;
END // |
Pouvez-vous m'aider merci, infiniment. Ou si vous avez une solution autre, je suis toute ouïe ! :P