2016-02-12 95 views
0

我試圖設置兩個表之間的引用,並且當我加載頁面時,我一直運行到此錯誤。MySQL的錯誤:創建表時出錯:無法添加外鍵約束

Error creating table: Cannot add foreign key constraint 

這就是「日曆」表: calendars table image

而這正是當前查詢我正在創建表:

CREATE TABLE `'.$classTableName.'`(
    classID INT(11) NOT NULL, 
    name VARCHAR(255) NOT NULL, 
    users INT(11) NOT NULL, 
    files INT(11) NOT NULL, 
    chats INT(11) NOT NULL, 
    deadlines INT(11) NOT NULL, 
    calendar INT(11) NOT NULL, 
    PRIMARY KEY (classID), 
    FOREIGN KEY (calendar) REFERENCES calendars(classID) 
) ENGINE=INNODB; 

任何幫助,將不勝感激! :)

+0

你有'calendars.classID'上的索引嗎?外鍵必須指向具有索引的列。通常它指向表的主鍵。 – Barmar

+0

而不是圖像,顯示'SHOW CREATE TABLE日曆'的輸出。 – Barmar

+0

在calendars.classID上添加主索引解決了它,非常感謝! – joshkeley

回答

0

不得不索引calendars.classID,正如Basmar指出的那樣。

相關問題