Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Auto-Increment-Primärschlüssel neu anordnen/zurücksetzen

Auch wenn diese Frage ziemlich alt zu sein scheint, werde ich eine Antwort für jemanden posten, der hier sucht.

SET @count = 0;
UPDATE `users` SET `users`.`id` = @count:= @count + 1;

Wenn die Spalte als Fremdschlüssel in anderen Tabellen verwendet wird, stellen Sie sicher, dass Sie ON UPDATE CASCADE verwenden anstelle des standardmäßigen ON UPDATE NO ACTION für die Fremdschlüsselbeziehung in diesen Tabellen.

Weiterhin, um den AUTO_INCREMENT zurückzusetzen zählen, können Sie sofort folgende Aussage machen.

ALTER TABLE `users` AUTO_INCREMENT = 1;

Für MySQLs wird der Wert auf MAX(id) + 1 zurückgesetzt .