MySQL Ralat 1022: Duplikat Kunci dalam Jadual
Senario:
Setelah cuba mencipta jadual, anda menghadapi ralat membingungkan 1022 yang menunjukkan kunci pendua pelanggaran kekangan. Walaupun menyemak pertanyaan, sumber pendua masih sukar difahami.
Penjelasan:
Walaupun mesej ralat menyebut kunci pendua dalam jadual kalangan pengguna, puncanya mungkin terletak di bahagian lain skema pangkalan data. Kekangan, seperti kunci asing dan kekangan kunci unik, mestilah unik merentas seluruh pangkalan data, bukan hanya dalam satu jadual.
Penyelesaian:
Kenalpasti Pendua Kekangan:
SELECT `TABLE_SCHEMA`, `TABLE_NAME` FROM `information_schema`.`KEY_COLUMN_USAGE` WHERE `CONSTRAINT_NAME` IN ('iduser', 'idcategory');
Namakan Semula Kekangan Pendua:
Buat Semula Jadual:
Dengan mengikut langkah ini, anda boleh menyelesaikan ralat 1022 dan berjaya mencipta jadual yang diingini tanpa kekangan kunci pendua.
Atas ialah kandungan terperinci Ralat MySQL 1022: Bagaimana Saya Menyelesaikan Kekangan Utama Pendua Apabila Mencipta Jadual?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!