主键与候选键的区别

主键和候选键都是用于从表中访问元组的属性,这些键(主键和候选键)也可用于在两个表之间创建关系。

主键

主键是一组属性(或属性),用于唯一标识关系或表中的元组。主键是最小的超级键,所以在任何关系中都只有一个主键。例如,

Student{ID, F_name, M_name, L_name, Age} 

这里只有 ID 可以作为主键,因为姓名、年龄和地址可以相同,但 ID 不能相同。

候选键

候选键是唯一标识关系或表中的元组的一组属性(或属性)。众所周知,主键是最小的超级键,因此在任何关系中都只有一个主键,但可以出现多个候选键。候选键的属性可以包含一个与主键不同的 NULL 值。例如,

Student{ID, First_name, Last_name, Birthday} 

这里我们可以看到两个候选键 ID{First_name, Last_name, Birthday}。所以在这里,存在多个候选键,它们可以唯一地标识一个关系中的一个元组。

主键和候选键之间的比较区别:

编号主键候选键
1主键是最小的超级键。因此,关系中只有一个主键。在关系中可以有多个候选键。
2主键的任何属性都不能包含NULL值。在候选键中,任何属性都可以包含 NULL 值。
3主键可以是可选的,以指定任何关系。但是没有候选键就不能指定任何关系。
4主键指定关系的重要属性。候选指定可以作为主键的键。
5确认主键是候选键。但它没有确认候选键可以是主键。

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/264326.html

(0)
上一篇 2022年6月7日
下一篇 2022年6月7日

相关推荐

发表回复

登录后才能评论