Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Crie um gatilho de inserção para incrementar automaticamente o campo int do PK composto (String, int), reinicie a numeração em 1 para novas Strings


Você já tentou declarar a variável em vez disso?
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$$