超键、主键、候选键

1、定义


  超键:在关系模式中,能够唯一标识元组的属性集称为超键(super key)。

  候选键:在关系模式中,能唯一标识元组并且不包含多余属性的属性集称为候选键。值得注意的是,超键与候选键是有区别的,超键可能含有多余的属性,而候选键不能。

  主键:在一个关系的若干个候选键中随意的指定一个作为唯一标识元组的关键字,则此关键字称为主键。


三者之间的关系:


   


2、举例


  例如关系模式学生:


               


  对于学生,(学号、姓名、性别)可以是一个超键,但是不能够是一个候选键,因为学号就能够唯一标识一个学生。

  假定姓名没有重名的话,那么(学号)、(姓名)都可以是候选键,如果我们选定学号为唯一标识元组的键,那么学号就是主键。


3、主属性和非主属性


  主属性:所有候选键中的所有属性都称为主属性。

  非主属性:不包含在任何候选键中的属性称为非主属性。

  例如:


           


4、如何区分超键、候选键和主键


  超键中可能包含有无关的属性,我们可以将“超”解释成“多余,赘余“的意思;而主键和候选键中属性都是必要的,缺少任何一属性都不能唯一标识一个元组。

  主键它也是候选键的一员,和候选键的区别在于主键是被数据库设计者选定作为标识元组的键。


  附:外键

    如果关系模式R1中的某属性集不是R1的候选键,而是关系模式R2的候选键,则这个属性集对模式R1而言是外键(forergn key),注意不是对于R2而言的。





  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值