Rumah > pangkalan data > tutorial mysql > Mengapa Saya Mendapat 'Tidak boleh membuat jadual ... (errno: 150)' Apabila Menambah Kunci Asing?

Mengapa Saya Mendapat 'Tidak boleh membuat jadual ... (errno: 150)' Apabila Menambah Kunci Asing?

Mary-Kate Olsen
Lepaskan: 2024-12-04 19:27:12
asal
372 orang telah melayarinya

Why Am I Getting

Ralat Menambah Kunci Asing: Memahami dan Menyelesaikan

Apabila cuba menambah kunci asing pada jadual sedia ada bernama "katalog," pengguna boleh menghadapi ralat yang serupa dengan "Tidak dapat membuat jadual 'mytable.#sql-7fb1_7d3a' (errno: 150)." Ralat ini boleh diselesaikan dengan mengikuti proses tertentu.

Pertanyaan untuk menambah kunci asing hendaklah dalam format berikut:

ALTER TABLE <table_name> ADD FOREIGN KEY (<column_name>) REFERENCES <referenced_table_name> (<referenced_column_name>) ON DELETE <delete_action> ON UPDATE <update_action>;
Salin selepas log masuk

Dalam kes ini, pertanyaan yang betul ialah:

ALTER TABLE katalog ADD FOREIGN KEY (Sprache) REFERENCES Sprache (ID) ON DELETE SET NULL ON UPDATE SET NULL;
Salin selepas log masuk

Pastikan syarat berikut dipenuhi:

  • Jadual dan lajur yang dirujuk wujud.
  • Jenis data lajur sepadan.
  • Jadual yang dirujuk mempunyai kunci utama atau indeks unik.

Jika syarat ini dipenuhi dan ralat berterusan, ia mungkin menunjukkan isu asas lain yang perlu ditangani.

Atas ialah kandungan terperinci Mengapa Saya Mendapat 'Tidak boleh membuat jadual ... (errno: 150)' Apabila Menambah Kunci Asing?. 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