sql >> Database teknologi >  >> RDS >> Mysql

MySQL Trigger:kopier auto_increment-værdien til en anden kolonne ved indsættelse

På denne kode

  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'
  );

jeg gjorde sådan noget her

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

i tilfælde af at du bruger UNSIGNED_ZEROFILL på id-feltet... og du har muligvis brug for en tilpasset type "offentlig" id...



  1. Brug af en Alias-kolonne i where-sætningen i Postgresql

  2. Opretter forbindelse til 4D fra Java

  3. FORCE INDEX i MySQL - hvor skal jeg placere det?

  4. PLSQL JDBC:Hvordan får man sidste række-id?