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

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

身份证 姓名 性别 年龄

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

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

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

外键(Foreign Key)

如果A类元祖的一个或者多个属性构成的属性集是其他类型元祖的候选键,那么该属性集就是A类元祖的外键,

标示着与其他类元祖的关系。

参考文字:

【1】百度知道:超键(super key)、候选键(candidate key)和主键(primary key) 外键(foreign key)的区别 大话残剑 的回答

最新文章

  1. C# 云端-让http自动跳转到https链接
  2. 我所理解的RESTful Web API [设计篇]
  3. java冒泡排序
  4. 关于div标签的title属性一闪一闪不正常显示的原因
  5. html页面 代码 编写的 一些 基本素养 约定 知识点
  6. qt 程序启动参数 -qws  (转至 MrTXK
  7. [Ogre][地形][原创]基于OgreTerrain的地形实现
  8. 1166 矩阵取数游戏[区间dp+高精度]
  9. 去掉iphone手机滑动默认行为
  10. elastaticresearch 学习过程
  11. mysql 在visual studio中的配置
  12. 使用genism训练词向量【转载】
  13. [双硬盘GPT分区安装linux] ----安装
  14. Github/github 初始化教程
  15. C++顺序容器之list初探
  16. Linux更改IP地址
  17. DFS的运用(二分图判定、无向图的割顶和桥,双连通分量,有向图的强连通分量)
  18. 20154312 曾林 Exp8 web基础
  19. java 缓冲区大小与下载速度的关系
  20. 关于finecms v5 会员头像 任意文件上传漏洞分析

热门文章

  1. Codeforces Round #342 (Div. 2) B
  2. Dumpsdecrypted
  3. 第01篇 说一下Setting,我一直没有讲过
  4. Nginx与Apache工作方式
  5. 【通用邮件发送】C# QQ 网易邮箱
  6. linux删除乱码
  7. CentOS查看系统版本号
  8. Apache 文件服务器
  9. Chrome浏览器启动页被360导航篡改解决方法
  10. 【NOIP】2013 花匠