【MySQL】外键

MySQL外键约束

外键约束有什么用呢?

外键约束即FOREIGN KEY常用于多张表之间的约束
外键是指引用另一个表中的一列或多列,被引用的列应该具有主键约束或唯一性约 束。外键用于建立和加强两个表数据之间的连接。

设置外键约束有两种最基本的方法:

方法一:
先创建一个数据库:

mysql> create database etime0215;
Query OK, 1 row affected (0.01 sec)

创建一个学生表:

mysql> crate table student(
    -> name varchar(10) not null,
    -> id int primary key,
    -> age int,
    -> classid int
    -> );

向学生表中写入数据:

mysql> insert into student values('lili',18,1),('xixi',19,1),('haha',19,2),('zaza',21,2),('yuanyuan',22,1);

创建班级表:

mysql> create table class(
    -> name varchar(10),
    -> id int primary key
    -> );

向班级表中写入数据:

mysql> insert into class values('java一班',1),('java二班',2);

给学生表设置外键:

mysql> alter table student add constraint fk_student_classid foreign key(classid) references class(id);

这样就给学生表设置了外键,班级表即是他的外键约束

设置外键的格式如下:

ALTER TABLE 从表名 ADD CONSTRAINT 外键名 FOREIGN KEY (从表外键字段) REFERENCES 主表 (主键字段);

方法二:
同样的方法创建教师表和部门表

部门表写入数据:

mysql> create table department(
    -> id int primary key,
    -> name varchar(10)
    -> );

教师表写数据时就设置外键,如下:

mysql> create table teacher(
    -> name varchar(10),
    -> departmentid int,
    -> age int,
    -> constraint fk_teacher_departmentid foreign key (departmentid) references department(id)
    -> );

设置外键的格式如下:

 CONSTRAINT 外键名 FOREIGN KEY (从表外键字段) REFERENCES 主表 (主键字段)
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值