外观
超键、候选键、主键、外键分别是什么
定义:
超键(super key
): 在关系中能唯一标识元组的属性集称为关系模式的超键
候选键(candidate key
): 不含有多余属性的超键称为候选键。也就是在候选键中,若再删除属性,就不是键了!
主键(primary key
): 用户选作元组标识的一个候选键程序主键
外键(foreign key
):如果关系模式R中属性K是其它模式的主键,那么k在模式R中称为外键。
解释:
两个表分别位学生表
和班级表
学生表
(学号 身份证号 性别 姓名 班级)
宿舍表
(班级 座号)
超键:只要含有学号
或者身份证号
两个属性的集合就叫超键,例如T1
(身份证号 性别)、T2
(学号 身份证号 性别)等等都可以称为超键,因为集合中含有唯一标识。
候选键:不含有多余的属性的超键,比如(学号)、(身份证号)都是候选键,又比如T1
中身份证号
这一个属性就可以唯一标识元组了,而有没有性别
这一属性对是否唯一标识元组没有任何的影响!
主键:就是用户从很多候选键选出来的一个键就是主键,比如你要求学号
是主键,那么身份证号
就不可以是主键了!
外键:班级就是学生表的外键