Rumah >pangkalan data >tutorial mysql >Berikut ialah beberapa pilihan tajuk, menangkap pertanyaan dan penyelesaian dalam format soalan: * Ralat INSERT MySQL: \'Kiraan Lajur Tidak Padan dengan Kiraan Nilai\' - Bagaimana untuk Membetulkan? * \'Column Count Do
Apabila cuba memasukkan data dari satu jadual ke jadual lain dalam MySQL, anda boleh menghadapi ralat "#1136 - Kiraan lajur tidak sepadan dengan kiraan nilai pada baris 1." Ini berlaku apabila bilangan lajur yang dinyatakan dalam pernyataan INSERT tidak sepadan dengan bilangan lajur dalam data yang diambil.
Dalam pertanyaan yang disediakan, ralat berlaku kerana Pernyataan INSERT cuba memasukkan hasil subkueri ke dalam beberapa lajur. Walau bagaimanapun, subkueri hanya mendapatkan tiga lajur (id_langganan_majalah, nama_langganan, id_majalah), manakala pernyataan INSERT menentukan empat lajur (id_langganan_majalah, nama_langganan, id_majalah, status).
Untuk menyelesaikan ralat ini, anda boleh mengubah suai pernyataan INSERT untuk memasukkan secara langsung nilai yang tiada untuk lajur status, seperti yang dilihat dalam pertanyaan yang disemak di bawah:
INSERT INTO mt_magazine_subscription ( magazine_subscription_id, subscription_name, magazine_id, status ) SELECT magazine_subscription_id, subscription_name, magazine_id, '1' FROM tbl_magazine_subscription ORDER BY magazine_subscription_id ASC;
Dalam pertanyaan yang diubah suai ini, literal '1' ditentukan secara langsung sebagai nilai untuk lajur status, memastikan bahawa kiraan lajur sepadan dengan kiraan nilai.
Atas ialah kandungan terperinci Berikut ialah beberapa pilihan tajuk, menangkap pertanyaan dan penyelesaian dalam format soalan: * Ralat INSERT MySQL: \'Kiraan Lajur Tidak Padan dengan Kiraan Nilai\' - Bagaimana untuk Membetulkan? * \'Column Count Do. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!