Ralat Kekangan Kunci Asing MySQL: ERROR: Ralat 1005: Tidak dapat mencipta jadual
Isu:
Semasa mencuba untuk memajukan jurutera skema pangkalan data ke pelayan WAMP, pengguna menghadapi "ERROR: Ralat 1005: Tidak dapat mencipta jadual" khusus untuk jadual "Pautan".
Penyelesaian:
Ralat menunjukkan pelanggaran kekangan yang melibatkan perhubungan utama asing. Untuk menyelesaikan isu ini:
-
Semak Kekangan Utama Asing: Laksanakan pertanyaan SQL yang disediakan dalam penyelesaian:
SELECT
constraint_name,
table_name
FROM
information_schema.table_constraints
WHERE
constraint_type = 'FOREIGN KEY'
AND table_schema = DATABASE()
ORDER BY
constraint_name;
Periksa keputusan untuk mengenal pasti sebarang kekangan kunci asing yang dikaitkan dengan "Pautan" jadual.
-
Sahkan Nama Kekangan: Pastikan kekangan kunci asing pada jadual "Pautan" tidak berkongsi nama dengan kekangan yang ditakrifkan pada jadual lain. Jika ya, namakan semula kekangan kepada nama unik.
-
Semak Rujukan Lajur: Sahkan bahawa lajur yang dirujuk dalam kekangan kunci asing wujud dalam jadual induk dan mempunyai jenis data yang serasi.
-
Semak Jadual Rujukan: Sahkan bahawa jadual induk dirujuk dalam kekangan kunci asing sebenarnya wujud dalam pangkalan data.
-
Semak Semula Sintaks: Semak skrip SQL yang digunakan untuk mencipta jadual "Pautan" dan pastikan tiada ralat sintaks.
-
Pastikan Susunan Lajur Betul: Pastikan susunan lajur dalam jadual "Pautan" sepadan susunan lajur dalam jadual induk.
-
Mulakan Semula Pelayan MySQL: Dalam sesetengah kes, memulakan semula pelayan MySQL boleh menyelesaikan isu ini.
-
Periksa Ralat Log: Semak log ralat MySQL untuk butiran yang lebih khusus tentang kekangan pelanggaran.
Petua Tambahan:
- Gunakan nama kekangan deskriptif untuk penyelesaian masalah yang lebih mudah.
- Pertimbangkan menggunakan alat pemodelan pangkalan data untuk hasilkan skrip skema untuk meminimumkan ralat.
- Uji skema pada pangkalan data pembangunan yang berasingan sebelum menggunakannya ke persekitaran pengeluaran.
Atas ialah kandungan terperinci Mengapa Saya Mendapat Ralat MySQL 1005: Tidak Dapat Mencipta Jadual (Isu Kekangan Kunci Asing)?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!
Kenyataan:Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn