sql >> Databasteknik >  >> RDS >> Mysql

Ordna om/återställ automatisk inkrementering av primärnyckeln

Även om den här frågan verkar vara ganska gammal, kommer jag att lägga upp ett svar för någon som söker sig hit.

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

Om kolumnen används som en främmande nyckel i andra tabeller, se till att du använder ON UPDATE CASCADE istället för standardvärdet ON UPDATE NO ACTION för den främmande nyckelrelationen i dessa tabeller.

Vidare, för att återställa AUTO_INCREMENT räkna, kan du omedelbart utfärda följande uttalande.

ALTER TABLE `users` AUTO_INCREMENT = 1;

För MySQL:er återställs värdet till MAX(id) + 1 .



  1. Python psycopg2 infogas inte i postgresql-tabellen

  2. ROWID (oracle) - någon användning för det?

  3. Vad är skillnaden mellan varchar och nvarchar?

  4. SQL SELECT för nybörjare