a524213f67660a572e137635033c4e59.png

数据库中约束分为一下几种

●主键约束(Primary Key constraint):要求主键列数据唯一,并且不允许为空。

●唯一约束(Unique constraint):要求该列唯一,允许为空,但只能出现一个空值。

●检查约束(Check constraint):某列取值范围限制,格式限制等,如有关年龄、邮箱(必须有@)的约束。

●默认约束(Default constraint):某列的默认值,如在数据库里有一项数据很多重复,可以设为默认值。

●外键约束(Foreign Key constraint):用于在两个表之间建立关系,需要指定引用主表的哪一列。

下面我们就为大家介绍一下外键约束的创建过程。

先介绍一下基本情况。现在有两个表一张是teacher表一张是dept表,现在我想把teacher表中的dept属性设置为外键,关联dept表中的code属性。具体情况如图;好了,基本情况介绍完毕,现在开始教你们navicat for mysql 怎么设置外键。

53bea38c74cff20af1c6d7dabae94c9c.png

1、打开我的navicat,然后找到我的teacher表,选中它,然后点击菜单栏上的‘design table’。

d7ac0b0ce7edd73457386c7895923af6.png

2、在弹出的对话框中找到“Foreign Keys”,然后单机。

6e4b72a1309ffd8d380f3167a8b25071.png

3、然后会出现一个设置外键的界面,一共有七列。简单介绍一下这几列的意思。

‘name’:可以不填,你一会保存成功系统会自动生成。

‘FieldName’:就是你要把哪个键设置为外键。这里选择‘dept’

‘Reference DadaBase’:外键关联的数据库。

‘Reference Table‘ :关联的表 这里是dept表

‘Forgin filed Names’:关联的的字段,这里是code

‘ondelete’:就是删除的时候选择的动作。这里我的选择是setNull,意思就是当关联的表删除以后,teacher》dept字段会设置为null。

‘onupdate’:就是更新的时候选择的动作。这里我的选择是CASCADE,意思就是当关联的表更新以后,teacher》dept字段会设置为级联更新。

010ab835b3ae501b16d42431c969d188.png

4、设置完成后点击‘save’保存退出,也可以点击‘add Foreign Key’再添加一个外键。

e8a7a19750aad3ef102a14c99eca2396.png

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐