sql >> Databasteknik >  >> RDS >> Mysql

Uppdaterar AUTO_INCREMENT-värdet för alla tabeller i en MySQL-databas

Använder:

ALTER TABLE some_table AUTO_INCREMENT = 0

...återställer auto_increment-värdet till nästa värde baserat på det högsta befintliga värdet i auto_increment-kolumnen.

För att köra detta över alla tabeller måste du använda MySQL:s dynamiska SQL-syntax som kallas PreparedStatements eftersom du inte kan ange tabellnamnet för en ALTER TABLE-sats som en variabel. Du måste gå över utgången från:

SELECT t.table_name
  FROM INFORMATION_SCHEMA.TABLES t
 WHERE t.table_schema = 'your_database_name'

...kör ALTER TABLE-satsen ovan för varje tabell.



  1. Implementera twitter och facebook som hashtags

  2. Varför körs den andra T-SQL-frågan mycket snabbare än den första när den anropas av Reporting Services 2005 i en webbapp

  3. Förhindra SQL-injektion i C

  4. Visar meddelande när inga resultat hittas i PHP MySQL-sökning