Ralat: Tidak Dapat Mencipta Jadual Kerana Nama Kekangan Pendua
Dalam kejuruteraan hadapan pangkalan data MySQL anda ke pelayan WAMP, anda mengalami ralat "Ralat 1005: Tidak dapat mencipta jadual 'aquaticstar.link' (errno: 121)." Ralat ini menunjukkan bahawa jadual dengan nama yang ditentukan sudah wujud dalam pangkalan data.
Setelah penyiasatan lanjut, didapati bahawa isu itu berkaitan dengan nama kekangan pendua. Khususnya, jadual Pautan mengandungi kekangan kunci asing bernama id dan lesson_id, yang juga terdapat dalam jadual lain. Konflik penamaan ini menghalang pangkalan data daripada mencipta jadual Pautan.
Untuk menyelesaikan masalah ini, anda harus menamakan semula kekangan kunci asing dalam jadual Pautan kepada nama unik. Ini boleh dicapai dengan mengubah suai baris berikut dalam skrip yang dilaksanakan:
CONSTRAINT `id` FOREIGN KEY (`id` ) REFERENCES `Students` (`id` ) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `lesson_id` FOREIGN KEY (`lesson_id` ) REFERENCES `Schedule` (`lesson_id` ) ON DELETE NO ACTION ON UPDATE NO ACTION) ENGINE = InnoDB;
Sebagai contoh, anda boleh menamakan semula kekangan id kepada student_id dan kekangan lesson_id kepada schedule_lesson_id.
CONSTRAINT `student_id` FOREIGN KEY (`id` ) REFERENCES `Students` (`id` ) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `schedule_lesson_id` FOREIGN KEY (`lesson_id` ) REFERENCES `Schedule` (`lesson_id` ) ON DELETE NO ACTION ON UPDATE NO ACTION) ENGINE = InnoDB;
Setelah anda menamakan semula kekangan, laksanakan semula skrip untuk mencipta jadual Pautan berjaya.
Atas ialah kandungan terperinci Mengapa Saya Tidak Boleh Mencipta Jadual MySQL Saya Kerana Nama Kekangan Pendua?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!