Dalam mysql, "AUTO_INCREMENT" boleh digunakan untuk menyelesaikan masalah id auto-increment terhenti "AUTO_INCREMENT" digunakan untuk menetapkan pertumbuhan automatik kunci utama kepada 1. Sintaks ialah " ALTER TABLE table name AUTO_INCREMENT=1".
Persekitaran pengendalian tutorial ini: sistem Windows 10, versi mysql8.0.22, komputer Dell G3.
MySQL menetapkan medan unik dalam navicat:
Indeks (medan pilih) >>> (UNIK)
Apabila terdapat medan unik dalam jadual dan id kunci utama ditambah, medan unik sudah wujud apabila memasukkan data baharu dan sisipan gagal
Tetapi pada masa ini id telah ditambah dengan 1, dan data dimasukkan semula Masalah ID terputus.
-- Selepas pelaksanaan, ia tidak menunjukkan bahawa id yang dimasukkan ditetapkan kepada 1 sebaliknya, id yang dimasukkan ditetapkan kepada nilai id maksimum dalam jadual, 1.
ALTER TABLE `table` AUTO_INCREMENT =1;
Tambah pernyataan sql di atas sebelum sisipan beroperasi, dan tetapkan id sisipan kepada id 1 yang wujud dalam jadual semasa
auto_increment digunakan untuk pertumbuhan automatik kunci utama, bermula dari 1 Ia mula berkembang Apabila anda memadam rekod pertama dan memasukkan data lompatan kedua, nilai kunci utama ialah 2, bukan 1.
Contohnya:
create table `test` ( `id` int(10) not null auto_increment, -- 表示自增列 `name` varchar(20) not null, primary key(`id`) )
auto_increment = 1 -- Menunjukkan saiz permulaan autoincrement -- Dengan cara ini, anda boleh membuat jadual `test` dengan id sebagai lajur kenaikan automatik
-- Laksanakan sisipan pernyataan ke dalam nilai ujian (`nama`) ('nama');
-- Anda boleh memasukkan baris data sebagai : 1 'nama'
Maklumat lanjutan:
Apabila menggunakan AUTO_INCREMENT, anda harus memberi perhatian kepada perkara berikut:
1 digunakan pada lajur data jenis integer.
2. Lajur data yang atribut AUTO_INCREMENT ditetapkan haruslah urutan positif, jadi lajur data harus diisytiharkan sebagai TIDAK BERTANDA, supaya bilangan jujukan boleh digandakan.
3. Lajur data AUTO_INCREMENT mesti mempunyai indeks yang unik untuk mengelakkan pertindihan nombor siri (iaitu, kunci utama atau bahagian kunci utama). Lajur data AUTO_INCREMENT mesti mempunyai atribut NOT NULL.
4. Bilangan maksimum lajur data AUTO_INCREMENT dihadkan oleh jenis data lajur Contohnya, bilangan maksimum lajur data TINYINT ialah 127. Jika UNSIGNED ditambah, bilangan maksimum ialah 255. . Setelah had atas dicapai, AUTO_INCREMENT menjadi tidak sah.
5 Apabila memadamkan keseluruhan jadual, MySQL AUTO_INCREMENT akan memulakan semula penomboran dari 1.
Ini kerana apabila melakukan operasi jadual penuh, MySQL (gabungan terbaik dengan PHP) sebenarnya melakukan operasi pengoptimuman sedemikian: mula-mula padam semua data dan indeks dalam jadual data, dan kemudian bina semula jadual data .
Jika anda ingin memadam semua baris data dan mengekalkan maklumat nombor jujukan, anda boleh menggunakan perintah padam dengan tempat untuk menyekat pengoptimuman MySQL (gabungan terbaik dengan PHP): padam dari table_name di mana 1; 🎜>
Pembelajaran yang disyorkan:Atas ialah kandungan terperinci Apakah yang perlu saya lakukan jika ID peningkatan diri mysql tidak berterusan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!