簡體   English   中英

使用2個外鍵作為主鍵創建表時出現MySQL語法錯誤

[英]MySQL syntax error when creating a table with 2 foreign keys as primary key

當我運行以下查詢時,我總是收到1064錯誤,但我不明白它是怎么了:

CREATE TABLE hashmkb_mangatracker.group_release
(
 group_id int NOT NULL,
 release_id int NOT NULL,
 PRIMARY KEY (group_id, release_id),
 UNIQUE INDEX (release_id, group_id),
 FOREIGN KEY (group_id) REFERENCES group(id),
 FOREIGN KEY (release_id) REFERENCES release(id)
) ENGINE=INNODB;

錯誤:

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'group(id),
FOREIGN KEY (release_id) REFERENCES release(id)
) ENGINE=INNODB' at line 7 

感謝幫助。

GROUP是MySql中的保留關鍵字。 RELEASE也是如此。 您將必須在這些周圍添加反引號:

CREATE TABLE hashmkb_mangatracker.group_release
(
 group_id int NOT NULL,
 release_id int NOT NULL,
 PRIMARY KEY (group_id, release_id),
 UNIQUE INDEX (release_id, group_id),
 FOREIGN KEY (group_id) REFERENCES `group`(id),
 FOREIGN KEY (release_id) REFERENCES `release`(id)
) ENGINE=INNODB;

這是所有保留字的列表: http : //dev.mysql.com/doc/refman/5.6/en/reserved-words.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM