sql >> Base de Datos >  >> RDS >> Mysql

MySQL Trigger:copie el valor de auto_incremento en otra columna al insertar

En este código

  CREATE TRIGGER insert_example
  BEFORE INSERT ON notes
  FOR EACH ROW 
  SET NEW.content = (
        SELECT AUTO_INCREMENT 
        FROM information_schema.TABLES 
        WHERE TABLE_SCHEMA = DATABASE() 
        AND TABLE_NAME = 'notes'
  );

Hice algo como esto

SET NEW.content = (SELECT CONCAT('ID',LPAD(AUTO_INCREMENT, number,'0')) 
FROM information_schema.TABLES 
WHERE TABLE_SCHEMA = DATABASE() 
AND TABLE_NAME = 'notes');

en caso de que use UNSIGNED_ZEROFILL en el campo de identificación... y es posible que necesite un tipo personalizado de identificación "pública"...