主键和外键

1:主键和外键的定义

主键(primary key):一列(或一组列),其值能够唯一区分表中每个行 。
外键(foreign key外键为某个表中的一列,它包含另一个表的主键值,定义了两个表之间的关系 
借用其他博客中的三个数据表解析一下:

学生表(学号,姓名,性别,班级)  //  学号唯一,能确定学生表的一行
课程表(课程编号,课程名,学分)   //  课程编号唯一,能确定课程表的一行
成绩表(学号,课程号,成绩)     //   学号和课程号才能唯一确定哪个人哪门课得了多少分,学号和课程号这两列为主键
2:是哪个表的外键?

以上面的成绩表为例,学号和课程号是成绩表的主键,那么学号是成绩表的外键还是学生表的外键?当然是成绩表的外键,因为学号是学生表的主键呀,怎么可能是外键?同理成绩表课程号也应该是成绩表的外键。其实,外键主要建立与其他表的联系,如果我们想知道成绩表中某一行成绩是谁考的,啥性别,在哪个班级,就可通过成绩表的外键学号与学生表建立一种关系。

 

看了网上某些博客有点绕,不懂还是先查书吧。以上参考书籍为《MySQL必知必会》,不错的一本小册子。



 

转载于:https://www.cnblogs.com/QNPeng/p/10473562.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值