Mysql
 sql >> Base de données >  >> RDS >> Mysql

Déclencheur dans mysql provoquant une erreur

Avez-vous déclaré un délimiteur avant la définition de votre déclencheur ? Quelque chose comme

DELIMITER //
CREATE TRIGGER tg_order_insert
BEFORE INSERT 
    ON `order` FOR EACH ROW
BEGIN
    INSERT INTO `grocery`.`order_seqid` VALUE(NULL);
    SET NEW.order_id = CONCAT('#GNC', LPAD(LAST_INSERT_ID(),3,'0'));
END
//

Parce que si vous ne le faites pas, MySQL pense que vous essayez de mettre fin à votre définition de déclencheur lorsqu'il voit ce premier ; et appelle une erreur de syntaxe.