Navicat在MySQL中添加外键详细过程
·
Navicat在MySQL中添加外键详细过程
-
打开Navicat连接上数据库, 并建立新的数据库:“test”;
-
在数据库“test”中创建两个表“emp”(主表)和“dept”(从表)
“emp”(主表—员工表)
“dept”(从表—部门表)
-
将“emp”(主表)和“dept”(从表)中选项设置
表类型:InnoDB, 字符集:utf8 – UTF-8 Unicode(默认), 整理: utf8_general_ci(默认), 自动递增: 自己设置(主表emp与从表dept必须相同)
4.设置外键
外键名(name):可以不填, 系统自动生成;
栏位名(Field Name): 就是设置‘dept_id’为外键;
参考数据库(Reference DadaBase): 外键(‘dept_id’)关联的数据库;
引用表(Reference Table): 关联的表, 这里是dept表;
外栏位名(Outside field name): 关联的字段(这里是“dept_id”, 可以与栏位名相同);
删除时:删除时候选择的动作(这里选择CASCADE);
刷新时:更新时候选择的动作(这里选择CASCADE)CASCADE ---就是当关联的表更新后, emp中的dept_id也随着更新。
CASCADE
在父表上update/delete记录时,同步update/delete掉子表的匹配记录
SET NULL
在父表上update/delete记录时,将子表上匹配记录的列设为null (要注意子表的外键列不能为not null)
NO ACTION
如果子表中有匹配的记录,则不允许对父表对应候选键进行update/delete操作
RESTRICT
同no action, 都是立即检查外键约束
SET NULL
父表有变更时,子表将外键列设置成一个默认的值 但Innodb不能识别
注意:
添加外键数据库引擎必须为InnoDB;
关联的字段数据类型必须一样;
从表中的关联字段数据,必须在主表中。
5.使用Navicat在MySQL中添加外键完成。
更多推荐
已为社区贡献1条内容
所有评论(0)