Sử dụng:
ALTER TABLE [your table name here] AUTO_INCREMENT = 1
... sẽ đặt lại giá trị auto_increment thành giá trị tiếp theo dựa trên giá trị hiện có cao nhất hiện có trong bảng. Điều đó có nghĩa là nó không thể được sử dụng để sửa các khoảng trống của nhiều hơn một.
Lý do duy nhất để làm điều này là dành cho những cái thẩm mỹ - cơ sở dữ liệu không quan tâm đến việc các bản ghi có tuần tự hay không, chỉ là chúng liên quan đến nhau một cách nhất quán. Không cần phải "sửa" các giá trị vì lợi ích của cơ sở dữ liệu.
Nếu bạn đang hiển thị id
cho người dùng, đó là lý do tại sao bạn muốn chúng luôn tuần tự, thì tôi khuyên bạn nên thêm một khóa thay thế. Sử dụng khóa thay thế để hiển thị cho người dùng, do đó, các giá trị có thể được sắp xếp lại trình tự khi cần nhưng tính toàn vẹn tham chiếu không bị ảnh hưởng. Khóa thay thế trong trường hợp này sẽ là một cột số nguyên.