Mặc dù câu hỏi này có vẻ khá cũ, nhưng sẽ đăng câu trả lời cho những ai có thể truy cập vào đây để tìm kiếm.
SET @count = 0;
UPDATE `users` SET `users`.`id` = @count:= @count + 1;
Nếu cột được sử dụng làm khóa ngoại trong các bảng khác, hãy đảm bảo bạn sử dụng ON UPDATE CASCADE
thay vì ON UPDATE NO ACTION
mặc định cho mối quan hệ khóa ngoài trong các bảng đó.
Hơn nữa, để đặt lại AUTO_INCREMENT
đếm, ngay lập tức bạn có thể đưa ra câu lệnh sau.
ALTER TABLE `users` AUTO_INCREMENT = 1;
Đối với MySQL, nó sẽ đặt lại giá trị thành MAX(id) + 1
.