ฉันมีตารางที่ใช้คีย์หลักในตารางอื่นหลายตารางและมีคีย์ต่างประเทศหลายตาราง
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): ข้อผิดพลาดในการเปลี่ยนชื่อ"
ฉันจะวางคอลัมน์ในตารางการมอบหมายด้านบนโดยไม่มีข้อผิดพลาดนี้ได้อย่างไร