Rumah >pangkalan data >tutorial mysql >Mengapa Saya Tidak Boleh Menambah Kekangan Utama Asing dalam MySQL?
Ralat Kekangan Kunci Asing MySQL: Menyelidiki Puncanya
Apabila cuba mencipta jadual dengan kekangan kunci asing dalam MySQL, anda boleh menghadapi ralat samar: "Tidak boleh menambah kekangan kunci asing." Ralat ini boleh membingungkan, terutamanya jika anda telah memastikan kewujudan kunci utama dalam jadual yang dirujuk.
Untuk membongkar punca ralat ini, laksanakan arahan berikut:
SHOW ENGINE INNODB STATUS;
Perintah ini memaparkan maklumat terperinci tentang enjin InnoDB, termasuk kekangan kunci asing dan ralatnya.
Salah satu sebab yang paling biasa untuk ralat ini ialah ketidakpadanan antara medan yang dirujuk dan medan kunci asing. Mereka mesti sepadan dalam aspek berikut:
Satu lagi punca yang berpotensi ialah mentakrifkan keadaan SET NULL untuk a kunci asing, walaupun beberapa lajur dalam jadual rujukan BUKAN NULL. Untuk mengelakkan ralat ini, pastikan semua lajur yang terlibat dalam kekangan kunci asing BUKAN NULL.
Ingat, sementara mungkin untuk melumpuhkan semakan kunci asing buat sementara waktu dengan "set foreign_key_checks=0", ini harus dilakukan hanya untuk tujuan penyahpepijatan tertentu. Sentiasa pastikan bahawa kekangan kunci asing didayakan untuk mengekalkan integriti data dalam pangkalan data anda.
Atas ialah kandungan terperinci Mengapa Saya Tidak Boleh Menambah Kekangan Utama Asing dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!