navicat添加外键_Navicat添加外键详细操作

Navicat添加外键详细操作

发布时间:2018-11-22 00:41,

浏览次数:1162

, 标签:

Navicat

前言

用Navicat为mysql数据库的两个表之间建立外键关系,出现“cannot add foreign key

constraint”错误,操作了很久不知道怎么回事,发现竟然是。。。。

正文

想要建立class表与student表之间的外键连接,class为父表,student为子表

打开student的设计表。

如果c_id不允许为空则当,选择删除时-->>SET NULL就会出现Cannot add foreign key

constraint的提示,这是因为删除置空有条件,必须满足字段允许为空(如果不满足,外键无法创建)当然,如果不允许为空,可以选择删除时-->>CASCADE也可以建立外键。

当勾选允许为空之后

再去保存就可以了。

还有必须注意,Engin必须为InnoDB。

总结一下:

外键条件

在我们使用外键的时候,应该遵循如下条件:

* 外键要存在,首先必须保证表的引擎是 InnoDB(默认的存储引擎),如果不是 InnoDB 存储引擎,那么外键可以创建成功,但没有约束作用;

* 外键字段的字段类型(列类型),必须与父表的主键类型完全一致;

* 每张表中的外键名称不能重复;

* 增加外键的字段,如果数据已经存在&#x

你可能感兴趣的:(navicat添加外键)