数据库中的主码、候选码、主属性、非主属性

打印 上一主题 下一主题

主题 657|帖子 657|积分 1971

参考链接
候选码、主码、全码、外码、主属性、主键、主关键字、非主属性清楚总结 - 知乎 (zhihu.com)

1.码:

能够标识一条记录的属性或者属性集
2.候选码

能够标识一条记录的最小属性集
任一候选键的任何真子集都不能唯一标识一个记录(比如在成绩表中(学号,课程号)是一个候选键,单独的学号,课程号都不能决定一条记录)
3.主码

唯一标识一条记录的最小属性集(从候选码中认为的挑选一条)
候选码有很多个,但是主码只有一个,以是是从候选码中挑一个
注意:主键只能有一个,但是主键可以有多个属性(这是一个容易被大家误的地方)
4.主属性

主属性是候选码全部属性的并集
5.非主属性

不包罗候选码中的属性称为非主属性,非主属性是相对主属性来界说的。

举例

学生成绩信息表中有(学号、姓名、性别、年事、系别、专业等)
在这个表中的姓名是唯一的,没有重名征象。


由于学号能确定一个学生,因此学生表中含有学号的任意组合都为此表的超键。如:(学号)、(学号,姓名)、(学号,性别)等。
学号唯一,以是是一个超键
姓名唯一,以是是一个超键
(姓名,性别)唯一,以是是一个超键
(姓名,年事)唯一,以是是一个超键
(姓名,性别,年事)唯一,以是是一个超键
候选键

学号唯一,而且没有多余属性,以是是一个候选键
姓名唯一,而且没有多余属性,以是是一个候选键
候选键可以是(C)(D)(A ,B)如果是这种的话,单独的A或者B都不能确定一条信息
(姓名,性别)唯一,但是单独姓名一个属性就能确定这个人是谁,以是性别这个属性就是多余属性,以是(姓名,性别)不是候选键
(姓名,年事),(姓名,性别,年事)同上,也不是候选键
主键

就是在候选码中选一个,人为规定的,例如学生表中,我们通常会让“学号”做主键,学号能唯一标识这一个元组。
主属性

学号,姓名
非主属性

性别、年事、系别、专业
练习题

名字会重复



1.答案:
(1)候选关键字2个学号),(身份证号)
(2)主关键字学号)
(3)主属性2个:学号,身份证号
(4)非主属性2个:姓名,系别
2. 答案:
(1)候选关键字1个学号,课程号)
(2)主关键字学号,课程号)
(3)主属性2个:学号,课程号
(4)非主属性1个:成绩
3.答案
(1)候选关键字1个课程号)
(2)主关键字课程号)
(3)主属性1个:课程号
(4)非主属性2个:课程名,学分




















免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

星球的眼睛

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表