热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

数据库基础理论之--超键候选键主键

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

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

外键:如果模式R中某属性集是其他模式的候选键,那么该属性集对模式R而言是外键(foreign key)

 

也就是说:包含候选键的属性集都是超键。

例如:学生信息表

学号 身份证号    姓名 年龄 性别

其中:学号:是唯一的(能唯一标识一个学生记录),所以是超键,而且没有多余属性,所以也是候选键

        身份证号:也是唯一的,也是超键,而且没有多余属性,所以也是候选键

       (学号,姓名):唯一,是超键,有多余属性姓名,不是候选键

        (学号,姓名,年龄): 唯一,是超键,有多余属性姓名和年龄,不是候选键

          --这里可以看出,超键的组合是唯一的,但可能不是最小唯一的,最小唯一的才是候选键或称为码

         这里我们可以将学号作为主键,也可以将身份证号做主键

         --主键是选中的一个候选键

问题:(学号,身份证)是候选键吗?答案:不是


推荐阅读
author-avatar
不要芹菜味
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有