Pertama, itu benar-benar baik untuk memiliki kesenjangan ini. tidak ada masalah . Hanya OCD Anda yang memaksa Anda untuk berpikir bahwa angka-angka ini harus mengikuti suatu pola - TIDAK.
auto_increment
bukan fitur PHP, ini fitur MySQLauto_increment
memastikan setiap baris mendapatkan unik nomor. Itu tidak berhubungan dengan nomor urutauto_increment
bekerja dengan aman di lingkungan bersamaan - itu berarti ada banyak pengguna yang terhubung ke MySQL dan melakukan banyak hal, dan semuanya harus dapat menangani database dan tidak mendapatkan id yang sama untuk mengidentifikasi baris. Ini dilakukan melalui proses yang agak rumit dan inilah salah satu alasan mengapaauto_increment
menghasilkan kesenjanganauto_increment
digunakan olehInnoDB
untuk organisasi fisik catatan pada disk - ini menggunakan fiturauto_increment
dan yang satu menghasilkan angka yang lebih besar dari sebelumnya (itulah yang dilakukannya, lebih besar dari sebelumnya, tidak berurutan). Menggunakan ini, b-tree dibangun dan catatan ditulis secara berurutan pada hard drive. Merusakauto_increment
membuatInnoDB
menyeimbangkan kembali pohon. Itu berarti ia melewati catatan dan membuat ulang indeks jika Anda mengacaukannya - itu adalah sesuatu yang tidak Anda inginkan. Pernah
Ketika Anda memikirkannya, apa yang Anda dapatkan dengan nomor urut? Tidak ada yang benar-benar, kecuali otak Anda mungkin kurang sakit karena ada beberapa urutan imajiner.
Untuk nomor urut, gunakan pemicu untuk membuatnya. auto_increment
memiliki satu pekerjaan dan hanya satu pekerjaan - untuk menghasilkan unik angka.