Berikut ialah beberapa pilihan tajuk, setiap satu menekankan aspek artikel yang berbeza: Pendek dan Umum: * Mengapa Saya Tidak Boleh Menambah Kekangan Kunci Asing dalam MySQL? * Menyelesaikan masalah Kekangan Kunci Asing E

Mary-Kate Olsen
Lepaskan: 2024-10-26 16:57:03
asal
880 orang telah melayarinya

Here are a few title options, each emphasizing a different aspect of the article:

Short and General:

* Why Can't I Add a Foreign Key Constraint in MySQL? 
* Troubleshooting Foreign Key Constraint Errors in MySQL

More Specific:

* MySQL Foreign Key Con

Ralat Kekangan Kunci Asing dalam MySQL: Punca Akar dan Penyelesaian

Ralat "ERROR 1215 (HY000): Tidak boleh menambah kekangan kunci asing" timbul apabila mentakrifkan rujukan kunci asing antara dua jadual dalam MySQL. Untuk menangani isu ini, adalah penting untuk memastikan bahawa kriteria khusus dipenuhi untuk kedua-dua medan yang dirujuk dan medan kunci asing:

Keserasian Enjin:
Kedua-dua medan mesti berada dalam jadual dengan enjin yang sama, biasanya InnoDB.

Jenis dan Panjang Data:
Jenis data dan panjang medan mestilah sama. Sebagai contoh, jika medan yang dirujuk ialah VARCHAR(20), medan kunci asing juga hendaklah VARCHAR(20).

Pengumpulan:
Pengumpulan medan hendaklah sepadan serta, sebagai contoh, utf8.

Keunikan:
Medan yang dirujuk dalam jadual induk hendaklah unik atau diisytiharkan sebagai KUNCI UTAMA untuk memastikan setiap baris dalam jadual anak mempunyai rujukan yang sah.

NULL Kekangan:
Jika medan kunci asing membenarkan nilai NULL, medan yang dirujuk juga harus membenarkan nilai NULL.

Eksklusif Pelaksanaan:
Senario tertentu mungkin memerlukan pelaksanaan pernyataan penciptaan kunci asing secara eksklusif tanpa sebarang pertanyaan serentak lain. Ini boleh dicapai dengan memulakan transaksi, contohnya:

<code class="sql">BEGIN;
CREATE TABLE course ( ... );
COMMIT;</code>
Salin selepas log masuk

Langkah Tambahan:

  • Semak Status InnoDB: Untuk dapatkan butiran ralat yang lebih spesifik, laksanakan STATUS INNODB SHOW ENGINE;.
  • Lumpuhkan Pemeriksaan Kunci Asing: Lumpuhkan pemeriksaan kunci asing untuk sementara waktu menggunakan SET FOREIGN_KEY_CHECKS=0; membenarkan penciptaan jadual, tetapi pemasukan data mungkin masih gagal jika kekangan kunci asing tidak dipenuhi.
  • Gunakan ON DELETE CASCADE / ON UPDATE CASCADE: Dengan pilihan ini, baris yang berkaitan dalam jadual anak dipadamkan atau dikemas kini secara automatik apabila medan yang dirujuk dalam jadual induk diubah suai.

Ingat, adalah penting untuk mengesahkan bahawa semua syarat ini dipenuhi untuk memastikan penciptaan kekangan kunci asing berjaya.

Atas ialah kandungan terperinci Berikut ialah beberapa pilihan tajuk, setiap satu menekankan aspek artikel yang berbeza: Pendek dan Umum: * Mengapa Saya Tidak Boleh Menambah Kekangan Kunci Asing dalam MySQL? * Menyelesaikan masalah Kekangan Kunci Asing E. 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
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!