Rumah >pangkalan data >tutorial mysql >Mengapa MySQL Throw Ralat 150: Jenis Rujukan Kunci Asing Tidak Padan?
MySQL Ralat 150: Jenis Rujukan Kunci Asing Tidak Padan
Semasa cuba mencipta pangkalan data dengan beberapa jadual, pengguna mengalami ralat: " Kod Ralat: 1005. Tidak boleh membuat jadual '336_project.sections' (errno: 150)." Ralat ini berkaitan dengan penggunaan kunci asing.
Setelah pemeriksaan lebih dekat, didapati bahawa jenis data lajur yang berkaitan tidak sepadan. Dalam kes ini, lajur "Kod_Kursus" dalam jadual "Bahagian" ditakrifkan sebagai VARCHAR, manakala lajur yang sepadan dalam jadual "Kursus" ditakrifkan sebagai INT.
MySQL memerlukan kunci asing dan utama kunci dalam jadual berkaitan mempunyai jenis data yang sepadan. Ralat ini berlaku apabila jenis data tidak sepadan, walaupun nama dan sintaks kekangan kunci asing kelihatan betul.
Penyelesaian:
Untuk menyelesaikan ralat ini, pastikan jenis data lajur yang berkaitan dalam jadual induk dan anak adalah sama. Dalam contoh ini, jenis data lajur "Kod_Kursus" dalam kedua-dua jadual "Bahagian" dan "Kursus" hendaklah ditukar kepada VARCHAR.
Setelah jenis data dipadankan dengan betul, kekangan kunci asing akan menjadi dikuatkuasakan, dan penciptaan jadual akan berjaya tanpa kesilapan.
Atas ialah kandungan terperinci Mengapa MySQL Throw Ralat 150: Jenis Rujukan Kunci Asing Tidak Padan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!