数据库之各种键(Key)
2024-09-04 08:30:35
超键(super key):在关系中能唯一标识元组的属性集称为关系模式的超键
候选键(candidate key):不含有多余属性的超键称为候选键
主键(primary key):用户选作元组标识的一个候选键程序主键
比如一个小范围的所有人,没有重名的,考虑以下属性
身份证 姓名 性别 年龄
身份证唯一,所以是一个超键
姓名唯一,所以是一个超键
(姓名,性别)唯一,所以是一个超键
(姓名,性别,年龄)唯一,所以是一个超键
--这里可以看出,超键的组合是唯一的,但可能不是最小唯一的
身份证唯一,而且没有多余属性,所以是一个候选键
姓名唯一,而且没有多余属性,所以是一个候选键
--这里可以看出,候选键是没有多余属性的超键
考虑输入查询方便性,可以选择 身份证 为主键
也可以 考虑习惯 选择 姓名 为主键
--主键是选中的一个候选键
外键(Foreign Key)
如果A类元祖的一个或者多个属性构成的属性集是其他类型元祖的候选键,那么该属性集就是A类元祖的外键,
标示着与其他类元祖的关系。
参考文字:
【1】百度知道:超键(super key)、候选键(candidate key)和主键(primary key) 外键(foreign key)的区别 大话残剑 的回答
最新文章
- C# 云端-让http自动跳转到https链接
- 我所理解的RESTful Web API [设计篇]
- java冒泡排序
- 关于div标签的title属性一闪一闪不正常显示的原因
- html页面 代码 编写的 一些 基本素养 约定 知识点
- qt 程序启动参数 -qws (转至 MrTXK
- [Ogre][地形][原创]基于OgreTerrain的地形实现
- 1166 矩阵取数游戏[区间dp+高精度]
- 去掉iphone手机滑动默认行为
- elastaticresearch 学习过程
- mysql 在visual studio中的配置
- 使用genism训练词向量【转载】
- [双硬盘GPT分区安装linux] ----安装
- Github/github 初始化教程
- C++顺序容器之list初探
- Linux更改IP地址
- DFS的运用(二分图判定、无向图的割顶和桥,双连通分量,有向图的强连通分量)
- 20154312 曾林 Exp8 web基础
- java 缓冲区大小与下载速度的关系
- 关于finecms v5 会员头像 任意文件上传漏洞分析