刪除外鍵以解決MySQL 中的「錯誤1025」
當嘗試從表中刪除外鍵列時,MySQL 可能會提示錯誤「ERROR 1025 (HY000):重命名時出錯。
在提供的程式碼的上下文中:
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;
要正確刪除外鍵列「locationIDX」 「賦值」表中,必須指定約束名稱,而不是索引名稱。刪除外鍵約束的語法為:
ALTER TABLE table_name DROP FOREIGN KEY constraint_name;
在本例中,約束名稱為「locationIDX」(如「FOREIGN KEY」子句中指定)。因此,刪除外鍵的正確指令是:
ALTER TABLE assignment DROP FOREIGN KEY locationIDX;
以上是如何解決刪除外鍵時 MySQL 錯誤 1025?的詳細內容。更多資訊請關注PHP中文網其他相關文章!