外键约束的具体作用是什么呢?
如题,通常会应用在哪些用途上?
如题,通常会应用在哪些用途上?
2016-04-30
外键约束:假如现在有三张表 学生 ,课程,学生选课信息表
学生表字段:ID1(主键),学生姓名,性别,年龄,班级。
课程表字段:ID2(主键),课程编号,课程名称,课时。
选课信息表字段,肯定要包含学生的信息和课程的信息,这时候我们可以将选课信息表字段设置为
ID3(主键),学生姓名,性别,年龄,班级,课程编号,课程名称,课时。
也就是,我们把学生的字段还有课程的字段全部放在了一张表里面了,可是你有没有发现什么?
对,这样一来我们的选课信息表的字段变长了。实际项目中这个关系还只是最简单的关系,还会有很多这种关系表出现,而且关系更加复杂,字段更加多,这就给我们带来了很大的不便。
所以,我们想到了外键,如果有外键我们可以这样设计选课信息表:
ID3(主键),学生ID1(外键),课程ID2(外键).
这样一来,我们这张表只有三个字段,就是将学生表的主键ID1拿到选课信息表中当外键(学生ID1)。将课程表的主键ID2拿到选课信息表中当外键(课程ID2)、
假如将来选课表中存储了一个选课关系,数据是:ID3=1,ID1=20105367 ,ID2=11123
你就可以很轻易的知道,学生表中主键为20105367 的学生选择了课程表中主键为11123的课程。这就是主键的魅力。
举报