什么是外键,如何添加外键?

外键 个人理解就是 外部的一个主键

Mysql里主键就是确保不能重复的一个关键词 primary

当前表的外键就是 当前表的属性名限制条件(类似与正则表达式的用法)

比如你成绩的范围是 0-10 如果另一个表的主键取了是0,1,2,3,4,5,6,7,8,9,10;就相当于限制只能取

0,1,2,3,4,5,6,7,8,9,10

所以知道了定义以后我们再看外键添加的语法

语法一

添加外键 那么就先需要外键的限制条件  那么就需要先创建主键表

(有外键的表 叫外键表,另外一个就叫主键表)

首先要有主键表 (就是现有限制条件  才能限制) 在主键表中设置好主键以后

外键表中引用的外键就是主键表的主键!

主键表 student  主键 Sno;

语法:

CONSTRAINT    FK_fk            FOREIGN KET(Sno)       REFERENCES       `student`(Sno);

限制                    外键名           外键(主键表的主键)         参考                         表名(主键表的主键)

从语法中更能看出来外键其实就是一个限制  一个名为 FK_fk的限制  外键Sno  依据主键限制产生.

语法二

第二种就是通过alter 添加外键 这种外键依然是需要主键表和外键表

Alter table   表名 CONSTRAINT  FK_fk  FOREIGN KET(Sno)   REFERENCES  `student`(Sno);

删除

Alter table  表名 Drop foreign key `FK_fk` ;

Alter table 表名 Drop index `FK_fk` ;

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值