sql >> Database >  >> RDS >> Mysql

MYSQL &innoDB veranderen dynamisch AUTO_INCREMENT van een tabel

ALTER TABLE moet letterlijke waarden bevatten tegen de tijd dat de verklaring wordt geparseerd (d.w.z. tijdens voorbereidingstijd).

U kunt tijdens het parseren geen variabelen of parameters in de instructie plaatsen, maar u kunt wel variabelen in de instructie voor plaatsen tijd ontleden. En dat betekent het gebruik van dynamische SQL:

SET @new_index = (SELECT MAX(id) FROM sales );
SET @sql = CONCAT('ALTER TABLE sales AUTO_INCREMENT = ', @new_index);
PREPARE st FROM @sql;
EXECUTE st;


  1. Grails 3 - Gradle afhankelijkheden Mysql Connector

  2. MySQL Rollback-query

  3. Achtergrondprocessen

  4. Is er een manier om de weergavedefinitie van een SQL Server op te halen met behulp van gewone ADO?