У меня есть таблица, первичный ключ которой используется в нескольких других таблицах и имеет несколько внешних ключей для других таблиц.
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), это дает мне ошибку.
"ОШИБКА 1025 (HY000): ошибка при переименовании
Как я могу удалить столбец в таблице присваивания, не получив эту ошибку?