Rumah > pangkalan data > tutorial mysql > Mengapa Saya Mendapat Ralat Kekangan Utama Asing 1215?

Mengapa Saya Mendapat Ralat Kekangan Utama Asing 1215?

Mary-Kate Olsen
Lepaskan: 2024-11-25 09:57:11
asal
718 orang telah melayarinya

Why Am I Getting a Foreign Key Constraint Error 1215?

Ralat Kekangan Kunci Asing: 1215

Apabila cuba mencipta jadual pangkalan data dengan kekangan kunci asing, kod ralat 1215 boleh berlaku. Ini menunjukkan isu dengan menambahkan kekangan kunci asing, selalunya disebabkan oleh ketidakpadanan jenis data.

Analisis Terperinci:

Mesej ralat mencadangkan bahawa kelas lajur kunci asingPemimpin dalam jadual kelas tidak boleh merujuk ID pelajar kunci utama dalam jadual pelajar kerana jenis data mereka tidak sepadan. Dalam persediaan pangkalan data yang disediakan, classLeader ialah jenis VARCHAR (rentetan), manakala studentID ialah jenis INT (integer). Rujukan kunci asing memerlukan jenis data yang sepadan untuk pengesahan integriti data.

Alternatif:

Untuk menyelesaikan ralat, jenis data ClassLeader hendaklah ditukar kepada INT atau sebaliknya, bergantung kepada keperluan perniagaan. Jika menyimpan nama pelajar sebenar dalam classLeader adalah penting, jadual gabungan tambahan atau indeks unik pada lajur FirstName dan LastName jadual pelajar boleh digunakan untuk memastikan ketekalan data.

Mengisi Jadual dengan Kekunci Asing :

Jadual dengan kekangan kunci asing mempunyai susunan pengisian tertentu. Jadual utama (pelajar) hendaklah diisi sebelum jadual rujukan (kelas), atau pelanggaran kekangan kunci asing akan berlaku. Apabila mengisi jadual kelas, nilai ClassLeader mesti merujuk ID pelajar yang sah dalam jadual pelajar.

Sifat Kekunci Asing:

Kunci asing bukan kunci utama atau unik diri mereka sendiri. Ia digunakan untuk mewujudkan hubungan antara dua jadual, memastikan integriti data kekal utuh. Dalam kes ini, kunci asing classLeader memastikan bahawa setiap kelas mempunyai ID pelajar yang sah diberikan kepadanya, mengekalkan ketekalan data antara kedua-dua jadual.

Atas ialah kandungan terperinci Mengapa Saya Mendapat Ralat Kekangan Utama Asing 1215?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan