Cara menyelesaikan ralat MySQL: takrif jadual yang salah hanya boleh ada satu lajur automatik dan mesti ditakrifkan sebagai kunci, contoh kod khusus diperlukan
Dalam beberapa tahun kebelakangan ini, pangkalan data MySQL telah digunakan secara meluas, tetapi semasa penggunaan, kami sering menghadapi pelbagai laporan ralat. Antaranya, ralat biasa ialah "takrif jadual yang salah; hanya boleh ada satu lajur automatik dan ia mesti ditakrifkan sebagai kunci". Ralat ini biasanya berlaku apabila kami membuat jadual, yang mungkin menyakitkan kepala untuk pemula. Artikel ini akan memberi anda analisis terperinci tentang sebab ralat ini dan memberikan contoh kod khusus untuk menyelesaikan masalah.
Pertama, mari kita fahami sebab ralat ini. Pangkalan data MySQL memerlukan hanya satu lajur kenaikan automatik dalam jadual, dan lajur ini mesti menjadi kunci utama jadual. Jika kita melanggar peraturan ini semasa penciptaan jadual, kita akan mendapat ralat di atas. Seterusnya, kami akan menunjukkan cara untuk menyelesaikan masalah ini dalam bentuk contoh kod.
Sebagai contoh, kami mencipta jadual bernama Pelajar untuk menyimpan maklumat pelajar. Kami ingin memberikan nombor pelajar yang unik kepada setiap pelajar dan menggunakan nombor pelajar sebagai kunci utama. Berikut ialah contoh takrif jadual yang salah:
CREATE TABLE Students ( id INT AUTO_INCREMENT, name VARCHAR(50), PRIMARY KEY (name) );
Dalam contoh di atas, kami mencipta id lajur peningkatan automatik, tetapi menentukan lajur nama sebagai kunci utama. Ini salah kerana kami melanggar peraturan MySQL.
Untuk menyelesaikan masalah ini, kita perlu menentukan lajur id sebagai kunci utama. Berikut ialah contoh takrifan jadual betul yang diubah suai:
CREATE TABLE Students ( id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(50) );
Dalam contoh di atas, kami mentakrifkan lajur id sebagai kunci utama auto-increment, memastikan hanya terdapat satu lajur auto dan ia mestilah kunci utama.
Selain mengubah suai definisi jadual, kita juga boleh menggunakan pernyataan ALTER TABLE untuk mengubah suai jadual sedia ada. Berikut ialah contoh penggunaan pernyataan ALTER TABLE untuk membetulkan ralat di atas:
CREATE TABLE Students ( id INT AUTO_INCREMENT, name VARCHAR(50) ); ALTER TABLE Students MODIFY COLUMN id INT AUTO_INCREMENT PRIMARY KEY;
Dalam contoh di atas, kami mula-mula mencipta jadual Pelajar dan menentukan struktur jadual yang salah. Kemudian, gunakan pernyataan ALTER TABLE untuk mengubah suai takrifan lajur id dan tetapkannya sebagai kunci utama yang berkembang secara automatik.
Untuk meringkaskan, untuk menyelesaikan ralat MySQL "Takrif jadual yang salah; hanya boleh ada satu lajur automatik dan ia mesti ditakrifkan sebagai kunci", kita perlu menjelaskan perkara berikut:
Bagi pemula, mungkin sukar untuk memahami dan menyelesaikan ralat ini, saya harap analisis dan contoh kod dalam artikel ini dapat membantu anda lebih memahami dan menyelesaikan masalah ini. Apabila bekerja dengan pangkalan data MySQL, mengendalikan ralat dengan segera dan mempelajari cara menyelesaikan masalah adalah langkah penting untuk menjadi pembangun yang baik.
Atas ialah kandungan terperinci Takrif jadual yang salah; hanya terdapat satu lajur auto dan ia mesti ditakrifkan sebagai kunci - Cara menyelesaikan ralat MySQL: Takrif jadual yang salah hanya boleh ada satu lajur automatik dan ia mesti ditakrifkan sebagai kunci. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!