数据库范式 三范式
来源:互联网 发布:淘宝二手gopro可信吗 编辑:程序博客网 时间:2024/04/30 17:19
第一范式(1NF)
所谓第一范式(1NF)是指在关系模型中,对域添加的一个规范要求,所有的域都应该是原子性的,即数据库表的每一列都是不可分割的原子数据项,而不能是集合,数组,记录等非原子数据项。即实体中的某个属性有多个值时,必须拆分为不同的属性。在符合第一范式(1NF)表中的每个域值只能是实体的一个属性或一个属性的一部分。简而言之,第一范式就是无重复的域。
第二范式(2NF)
在1NF的基础上,非码属性必须完全依赖于码[在1NF基础上消除非主属性对主码的部分函数依赖]
第二范式(2NF)是在第一范式(1NF)的基础上建立起来的,即满足第二范式(2NF)必须先满足第一范式(1NF)。第二范式(2NF)要求数据库表中的每个实例或记录必须可以被唯一地区分。选取一个能区分每个实体的属性或属性组,作为实体的唯一标识。例如在员工表中的身份证号码即可实现每个一员工的区分,该身份证号码即为候选键,任何一个候选键都可以被选作主键。在找不到候选键时,可额外增加属性以实现区分,如果在员工关系中,没有对其身份证号进行存储,而姓名可能会在数据库运行的某个时间重复,无法区分出实体时,设计辟如ID等不重复的编号以实现区分,被添加的编号或ID选作主键。(该主键的添加是在ER设计时添加,不是建库时随意添加)
第三范式(3NF)
在1NF基础上,任何非主属性不依赖于其它非主属性[在2NF基础上消除传递依赖]
第三范式(3NF)是第二范式(2NF)的一个子集,即满足第三范式(3NF)必须满足第二范式(2NF)。简而言之,第三范式(3NF)要求一个关系中不包含已在其它关系已包含的非主关键字信息。例如,存在一个部门信息表,其中每个部门有部门编号(dept_id)、部门名称、部门简介等信息。那么在员工信息表中列出部门编号后就不能再将部门名称、部门简介等与部门有关的信息再加入员工信息表中。如果不存在部门信息表,则根据第三范式(3NF)也应该构建它,否则就会有大量的数据冗余。简而言之,第三范式就是属性不依赖于其它非主属性,也就是在满足2NF的基础上,任何非主属性不得传递依赖于主属性。
0 0
- 数据库范式 三范式
- 回味数据库三范式
- 数据库设计三范式
- 数据库三范式
- 数据库三大范式
- 数据库三范式
- 数据库的三范式
- 数据库设计三范式
- 数据库三范式
- 【学习】数据库三范式
- 数据库设计三范式
- 数据库三大范式
- SQL 数据库三范式
- 数据库三范式
- 数据库三范式
- 数据库设计三范式
- 数据库三大范式
- 数据库三大范式
- 软工视频之需求分析
- Fedora14中文输入法安装
- 每日算法之四十七:Valid Number (验证是否为数字)
- CCActionEase 笔记
- 数据库内容导出为excel
- 数据库范式 三范式
- STL介绍
- JavaSe基础XX20——网络编程_2
- Sublime Text 使用介绍、全套快捷键及插件推荐
- Linux笔记(2)
- 深入解析Cookie技术
- [Java][MAT] Shallow Heap大小计算释疑
- RadioButton与BadgeView结合使用!
- LeetCode-Merge Intervals