MySQL sẽ không cho phép bạn thay đổi lập chỉ mục của cột Tự động lập chỉ mục sau khi nó được tạo. Những gì tôi làm là xóa cột Tự động lập chỉ mục và sau đó thêm một cột mới có cùng tên, mysql sẽ lập chỉ mục cho cột mới tạo mà không có khoảng trống. Chỉ thực hiện điều này trên các bảng mà Chỉ mục tự động không liên quan đến phần còn lại của dữ liệu mà chỉ được sử dụng làm tham chiếu cho các cập nhật và xóa.
Ví dụ:gần đây tôi đã làm điều đó cho một bảng có chứa các câu tục ngữ trong đó cột Chỉ mục tự động chỉ được sử dụng khi tôi cập nhật hoặc xóa một câu tục ngữ nhưng tôi cần Chỉ mục tự động phải liên tục vì các câu tục ngữ được lấy ra thông qua một số ngẫu nhiên giữa 1 và số lượng các câu tục ngữ, có khoảng trống trong trình tự có thể dẫn đến số ngẫu nhiên trỏ đến một chỉ số không tồn tại.
HTH