Rumah >pangkalan data >tutorial mysql >Bagaimana Saya Menggugurkan Kunci Asing dalam MySQL Tanpa Ralat?

Bagaimana Saya Menggugurkan Kunci Asing dalam MySQL Tanpa Ralat?

DDD
DDDasal
2024-11-12 17:36:02445semak imbas

How Do I Drop Foreign Keys in MySQL Without Errors?

Menggugurkan Kunci Asing dalam MySQL

Apabila cuba mengubah suai jadual dengan kekangan kunci asing, pengguna mungkin menghadapi ralat yang menghalang penyingkiran kunci asing tertentu . Isu ini timbul apabila menggunakan nama indeks dan bukannya nama kekangan dalam pernyataan DROP FOREIGN KEY.

Pertimbangkan contoh berikut:

CREATE TABLE location (
   locationID INT NOT NULL AUTO_INCREMENT PRIMARY KEY
   ...
) ENGINE = InnoDB;

CREATE TABLE assignment (
   assignmentID INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
   locationID INT NOT NULL,
   FOREIGN KEY locationIDX (locationID) REFERENCES location (locationID)
   ...
) ENGINE = InnoDB;

CREATE TABLE assignmentStuff (
   ...
   assignmentID INT NOT NULL,
   FOREIGN KEY assignmentIDX (assignmentID) REFERENCES assignment (assignmentID)
) ENGINE = InnoDB;

Untuk menggugurkan kunci asing locationIDX daripada jadual tugasan , sintaks yang betul ialah:

ALTER TABLE assignment DROP FOREIGN KEY locationIDXconstraint;

Nota: locationIDXconstraint mesti digantikan dengan nama kekangan sebenar.

Dengan menyatakan nama kekangan dan bukannya nama indeks, kekangan kunci asing boleh berjaya dialih keluar tanpa menghadapi ralat.

Atas ialah kandungan terperinci Bagaimana Saya Menggugurkan Kunci Asing dalam MySQL Tanpa Ralat?. 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