2016-01-23 143 views
0

我正在尝试将我的新模式转发到我的数据库服务器上,但我无法弄清楚为什么我会收到此错误。我试图在这里搜索答案,但没有尝试过。MySQL错误1215:无法添加外键约束

这是当我试图正向工程我的新架构到我的DB服务器我得到的错误: image

+1

发布涉及其他表的结构 – Rahul

回答

0

几件事情可能会导致一个问题:

1)检查的数据类型是studentnummerstudent表中的列和vakID中的vakklas - 它们是INTVARCHAR(45)
2)检查输入错误 - 是否引用的表和列的名称与此CREATE语句中的方式相同?
3)检查studentvakklas已经有一些行违反NOT NULL条件 - 是否有一个记录与NULL值在引用列?
4)你是否在所有表格中使用InnoDB?
5)你确定charset在所有桌子上都一样吗?这很重要,尤其是因为您使用VARCHAR作为外键。尝试在ENGINE = InnoDB之后在表格创建的所有查询中添加DEFAULT CHARSET=utf8 - 它可能会解决问题

+0

1.是我使用了INT和VARCHAR,是不正确的?我想是这样,但我不确定。我不知道如何解决你提到的最后一点......我该怎么办? – Romy

+0

没关系,如果它匹配。另外,请检查VARCHAR是否为45以及这些值上使用的字符集。 –

+0

好的,你能告诉我如何在这些值上使用字符集。我完全不知道该怎么做。 – Romy

相关问题