navicat添加外键_mysql中主外键关系及如何用navicat.exe为两表建立外键关系

本文介绍了MySQL中主键和外键的概念,强调了外键用于建立表间联系,以及在Navicat中添加外键的三种方法。创建外键需满足特定条件,如表必须使用InnoDB引擎,对应列需有相似数据类型并建立索引。同时,文章讨论了删除主表记录时的不同操作选项,如RESTRICT和CASCADE。
摘要由CSDN通过智能技术生成

如果表中已经有数据了,要注意主键的值是否已经在外键里存在,如果有不存在建立关系时会报错。

一、外键:

1、什么是主键外键:

主键:是唯一标识一条记录,不能有重复的,不允许为空,用来保证数据完整性。

外键:是另一表的主键, 外键可以有重复的, 可以是空值,用来和其他表建立联系用的。所以说到了外键,一定是至少涉及到两张表。例如下面两张表:

上面有两张表:部门表(dept)、员工表(emp)。Id=Dept_id,而Dept_id就是员工表中的外键:因为员工表中的员工需要知道自己属于哪个部门,就可以通过外键Dept_id找到对应的部门,然后才能找到部门表里的各种字段信息,从而让二表相关联。所以说,外键一定是在从表中创建,从而找到与主表之间的联系;从表负责维护二者之间的关系。

我们先通过如下命令把部门表和职工表创建好,方便后面的举例:create table department(

id int primary key auto_increment,

name varchar(20) not null,

description varchar(100)

); create table employee(

id int primary key auto_increment,

name varchar(10) not null,

gender varchar(2) not null,

salary float(10,2),

age

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值