【发布时间】:2014-04-02 15:41:24
【问题描述】:
我有两张桌子电影和电影院。在cinema 表中,有一个名为cinema_id 的主键。我正在尝试使电影表中的这个主键成为电影表中的外键。 所以我用了
alter table movies
add foreign key(cinema_id)
references cinema(cinema_id)
但我收到一条错误消息:
#1072 - 表中不存在键列“cinema_id”
所以我添加了一列,然后尝试再次创建外键,但出现错误消息:
#1452 - 无法添加或更新子行:外键约束失败
我已经检查了列类型,并且是相同的。有人可以帮我吗?我不知道该怎么办。
【问题讨论】:
-
在添加 FK 时,您必须检查所有数据是否通过其约束。在查询前使用
SET foreign_key_checks = 0;,如果要强制,请在其后设置为 1。 -
@TomaszKowalczyk 我不明白什么 SET foreign_key_checks = 0;会做吗?
-
我不想失礼,但谷歌已经停止工作了吗?