MySQL数据库。无法添加外键

时间:2014-03-01 14:16:47

标签: mysql sql database

我有两张桌子电影和电影。在影院表中,有一个名为cinema_id的主键。我试图将电影表中的这个主键作为电影表中的外键。 所以我用了

alter table movies
add foreign key(cinema_id)
references cinema(cinema_id)

但是我收到一条错误消息:

  

#1072 - 表

中不存在关键列'cinema_id'

所以我添加了一个列然后再次尝试创建一个外键并且出现了一条错误消息:

  

#1452 - 无法添加或更新子行:外键约束失败

我已经检查了列类型,它是一样的。有人可以帮我这个吗?我不知道该怎么做。

1 个答案:

答案 0 :(得分:0)

您使用的语法错误。您必须创建约束而不是简单地添加外键。 试试这个:

ALTER TABLE MOVIES ADD CONSTRAINT MOVIES_CINEMA_FK
FOREIGN KEY (CINEMA_ID) 
REFERENCES CINEMA(CINEMA_ID);

MySQL Documentation