关闭

【自学考试】超键、候选键、主键

612人阅读 评论(18) 收藏 举报
分类:

自考过了一段时间了,考的并不是很理想,但也算勉强过了,现在再来复习复习当时我们感觉特别容易混淆的东西吧,记得当时记不住,还总是忘。

一、定义:

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

候选键(candidate key):不含有多余属性的超键称为候选键
主键(primary key):用户选作元组标识的一个候选键程序主键

外键(foreign key)如果关系模式R1中的某属性集不是R1的主键,而是另一个关系R2的主键则该属性集是关系模式R1的外键。

二、关系图:



三、实例

假设有如下两个表:
学生(学号,姓名,性别,身份证号,教师编号)
教师(教师编号,姓名,工资)
 
超键:
学生表中含有学号或者身份证号的任意组合都为此表的超键。如:(学号)、(学号,姓名)、(身份证号,性别)等。
 
候选键:
候选键属于超键,它是最小的超键,就是说如果再去掉候选键中的任何一个属性它就不再是超键了。学生表中的候选键为:(学号)、(身份证号)。
 
主键:
主键就是候选键里面的一个,是人为规定的,例如学生表中,我们通常会让“学号”做主键,教师表中让“教师编号”做主键。
 
外键:
外键比较简单,学生表中的外键就是“教师编号”。外键主要是用来描述两个表的关系。

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

如果还不懂得话,可以看以下的实例:

(身份证 姓名 性别 年龄)


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

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

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


总结:虽然考的不理想,但是该总结的还是应该总结的,感觉这些例子挺好的,应该认真看看

0
0
查看评论
发表评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

超键、候选键、主键的区别

超键(super key):在关系中能唯一标识元组的属性集称为关系模式的超键 候选键(candidate key):不含有多余属性的超键称为候选键 主键(primary key):用户选作元组标识...
  • citionefish
  • citionefish
  • 2013-06-19 14:42
  • 1688

菜鸟学数据库(四)——超键、候选键、主键、外键

这些年的一些经历告诉我,很多初学者搞不清超键、候选键等,被数据库中的各种键搞的一头雾水。下面就跟大家一起聊聊数据库中的那些键。 首先看看各种键的定义: 超键(super key):在关系中能唯...
  • liushuijinger
  • liushuijinger
  • 2013-10-17 09:57
  • 22271

【SQL数据库】【软考】主键、候选键、超键、全码

键          元组:表中的一行记录就是元组            候选键:能惟一标识元组,并且不含多余属性的属性...
  • u010191034
  • u010191034
  • 2014-10-26 18:29
  • 2336

数据库中超键,候选键、主键的区别

超键(super key):在关系中能唯一标识元组的属性集称为关系模式的超键 候选键(candidate key):不含有多余属性的超键称为候选键 主键(primary key):用户选作元组标识...
  • u010326424
  • u010326424
  • 2013-11-28 20:07
  • 899

超键、候选键、主键区别?

超键(super key):在关系中能唯一标识元组的属性集称为关系模式的超键 候选键(candidate key):不含有多余属性的超键称为候选键 主键(primary key):用户选作元组标识...
  • ksdb0468473
  • ksdb0468473
  • 2015-09-07 19:07
  • 405

理理清楚 超键、候选键、主键和外键

超键也叫超关键字、候选键也叫候选关键字
  • u012354475
  • u012354475
  • 2014-09-28 19:40
  • 1236

菜鸟学数据库(四)——超键、候选键、主键、外键

这些年的一些经历告诉我,很多初学者搞不清超键、候选键等,被数据库中的各种键搞的一头雾水。下面就跟大家一起聊聊数据库中的那些键。 首先看看各种键的定义: 超键(super key):在关...
  • renmengmeng520
  • renmengmeng520
  • 2017-10-30 19:12
  • 216

数据库中超键、候选键、主键的区分

数据库中超键、候选键、主键的区分   超键(super key):在关系中能唯一标识元组的属性集称为关系模式的超键 候选键(candidate key):不含有多余属性的超键称为候选键 ...
  • wwww4
  • wwww4
  • 2013-12-17 17:00
  • 692

数据库中超键、候选键、主键的区分

 超键(super key):在关系中能唯一标识元组的属性集称为关系模式的超键 候选键(candidate key):不含有多余属性的超键称为候选键 主键(primary key):用户选作...
  • mjj291268154
  • mjj291268154
  • 2015-08-31 20:55
  • 172

超键、候选键、主键区别?

超键(super key):在关系中能唯一标识元组的属性集称为关系模式的超键 候选键(candidate key):不含有多余属性的超键称为候选键 主键(primary key):用户选作元组标识...
  • szlcw1
  • szlcw1
  • 2013-12-16 09:38
  • 550
    个人资料
    • 访问:112743次
    • 积分:5128
    • 等级:
    • 排名:第6268名
    • 原创:107篇
    • 转载:2篇
    • 译文:0篇
    • 评论:1836条
    博客专栏
    UML

    文章:9篇

    阅读:11505
    请联系我