我在尝试添加外键时遇到错误,我做错了什么?

时间:2017-03-16 00:32:08

标签: mysql sql foreign-keys

我有episode表,episodeID(PK),airdatetitle

我有一个showshowID(PK),这是VARCHAR(5)

我使用以下内容:

ALTER TABLE episode
ADD FOREIGN KEY (showID)
REFERENCES show(showID);

我收到此错误:

  

1064 - 您的SQL语法出错;检查与您的MySQL服务器版本对应的手册,以便在#show; show(showID)'附近使用正确的语法。在第3行

1 个答案:

答案 0 :(得分:1)

您想要添加外键约束,因此我建议命名它。

但是,您的问题是show是保留字:

ALTER TABLE episode ADD CONSTRAINT fk_episode_showid
     FOREIGN KEY (showID) REFERENCES `show`(showID);

我通常以复数形式命名表格(shows而不是show)。这两个都捕获它们包含多行。而且,它也使他们与保留字冲突的可能性更小。