Trigger auto_increment apres chaque insertion
Bonjour à tous,
je voudrais insérer automatiquement une valeur auto_incremente dans une table qui est vide au départ et qui sera déclencheé après insertion d'une valeur dans une autre colonne.
ma tables est :
Code:
1 2 3 4 5 6 7 8 9 10 11
| CREATE TABLE CONTROLES(
controle_id INTEGER AUTO_INCREMENT NOT NULL,
reference_id INTEGER NULL,
controleur_nom VARCHAR(20) NULL,
quantite_controlee INTEGER NOT NULL,
date_controle VARCHAR(20) NULL,
observation NVARCHAR(255) NULL,
CONSTRAINT CONTROLES_controle_id_pk PRIMARY KEY (controle_id),
CONSTRAINT CONTROLES_reference_id_fk FOREIGN KEY (reference_id) REFERENCES ARTICLE_REFERENCES (reference_id),
CHECK (reference_id >= 0)
); |
mon trigger est :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
DELIMITER $$
CREATE OR REPLACE TRIGGER INCR_CONTROLE
BEFORE INSERT ON CONTROLES
FOR EACH ROW
BEGIN
SELECT NVL(MAX(reference_id),0)+ 1
INTO :NEW.reference_id
FROM CONTROLES WHERE controle_id:NEW.controle_id;
END $$
DELIMITER ; |
MySQL a répondu:
#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 'TRIGGER INCR_CONTROLE
BEFORE INSERT ON CONTROLES
FOR EACH ROW
BEGIN
SE' at line 1
merci de votre aide