首页 > 代码库 > 数据库术语之各种键(Key)

数据库术语之各种键(Key)

 

超键(super key):在关系中能唯一标识元组的属性集称为关系模式的超键
候选键(candidate key):不含有多余属性的超键称为候选键
主键(primary key):用户选作元组标识的一个候选键程序主键

比如一个小范围的所有人,没有重名的,考虑以下属性

身份证 姓名 性别 年龄

身份证唯一,所以是一个超键
姓名唯一,所以是一个超键
(姓名,性别)唯一,所以是一个超键
(姓名,性别,年龄)唯一,所以是一个超键
--这里可以看出,超键的组合是唯一的,但可能不是最小唯一的

身份证唯一,而且没有多余属性,所以是一个候选键
姓名唯一,而且没有多余属性,所以是一个候选键
--这里可以看出,候选键是没有多余属性的超键

考虑输入查询方便性,可以选择 身份证 为主键
也可以 考虑习惯 选择 姓名 为主键
--主键是选中的一个候选键

 

外键(Foreign Key)

如果A类元祖的一个或者多个属性构成的属性集是其他类型元祖的候选键,那么该属性集就是A类元祖的外键,

标示着与其他类元祖的关系。

参考文字:

【1】百度知道:超键(super key)、候选键(candidate key)和主键(primary key) 外键(foreign key)的区别 大话残剑 的回答

数据库术语之各种键(Key)