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

Créer un déclencheur d'insertion pour incrémenter automatiquement le champ int du PK composite (String, int), redémarrer la numérotation à 1 pour les nouvelles chaînes

As-tu essayé de déclarer la variable à la place ?

DELIMITER $$
CREATE TRIGGER `co05_test`.`ins_lineItem`
BEFORE INSERT ON `co05_test`.`my_table`
FOR EACH ROW
BEGIN
DECLARE newLineItem INT; 
SELECT 
    lineItem + 1 into newLineItem 
FROM my_table 
WHERE batch = NEW.batch
ORDER BY lineItem DESC 
LIMIT 1;

SET NEW.lineItem = newLineItem;   
END$$