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

Atualizando o valor AUTO_INCREMENT de todas as tabelas em um banco de dados MySQL


Usando:
ALTER TABLE some_table AUTO_INCREMENT = 0

...redefinirá o valor de auto_increment para ser o próximo valor com base no valor mais alto existente na coluna auto_increment.

Para executar isso em todas as tabelas, você precisará usar Sintaxe SQL dinâmica do MySQL chamada PreparedStatements porque você não pode fornecer o nome da tabela para uma instrução ALTER TABLE como uma variável. Você terá que fazer um loop sobre a saída de:
SELECT t.table_name
  FROM INFORMATION_SCHEMA.TABLES t
 WHERE t.table_schema = 'your_database_name'

...executando a instrução ALTER TABLE acima para cada tabela.