3NF(Third Normal Form)
2016-05-28 15:37
267 查看
定义
1 所谓第一范式(1NF)是指数据库表的每一列都是不可分割的基本数据项(列不可分)。
2 第二范式(2NF)要求数据库表中的每个实例或行必须可以被唯一的区分(要有主键)。
3 第三范式(3NF)要求一个数据库表中不包含已在其它表中已包含的非主关键字信息(不可有冗余字段)。
说明
(1)满足第三范式(3NF)必须先满足第二范式(2NF),满足第二范式(2NF)必须先满足第一范式(1NF)。
(2) 反3NF,考虑这样一个场景,QQ空间相册名为"我的大学",在该相册下有很多相片,每张相片都有一个浏览次数统计,哪该如何统计该相册下的所有图
片总的浏览次数?为了编程的方便以及考虑到效率,一般会在相册表添加一个冗余字段(total_count)来统计浏览总字数.
参考链接
https://en.wikipedia.org/wiki/Third_normal_form
1 所谓第一范式(1NF)是指数据库表的每一列都是不可分割的基本数据项(列不可分)。
2 第二范式(2NF)要求数据库表中的每个实例或行必须可以被唯一的区分(要有主键)。
3 第三范式(3NF)要求一个数据库表中不包含已在其它表中已包含的非主关键字信息(不可有冗余字段)。
说明
(1)满足第三范式(3NF)必须先满足第二范式(2NF),满足第二范式(2NF)必须先满足第一范式(1NF)。
(2) 反3NF,考虑这样一个场景,QQ空间相册名为"我的大学",在该相册下有很多相片,每张相片都有一个浏览次数统计,哪该如何统计该相册下的所有图
片总的浏览次数?为了编程的方便以及考虑到效率,一般会在相册表添加一个冗余字段(total_count)来统计浏览总字数.
参考链接
https://en.wikipedia.org/wiki/Third_normal_form
相关文章推荐
- hibernate 映射文件配置默认值方法
- iOS架构师之路:慎用继承
- hibernate对象关联
- Dubbo源码学习之知识点分析
- delphi 中COPY()函数的意思
- linux,Centos,bash: service: command not found
- ios jsonModel解析数组
- leetcode 103. Binary Tree Zigzag Level Order Traversal-深度遍历|广度遍历|递归|非递归
- ViewPager+Fragment 预加载问题
- 安卓5.0学习笔记1
- 集合的理解
- 基于react-router的单页应用
- 西邮ThoughtCoding实验室2016纳新笔试题(Java部分,面向大一大二,带参考答案)
- 架构漫谈系列文章
- Android属性动画ObjectAnimator源码简单分析
- 代码背后的故事
- WPF 利用键盘钩子来捕获键盘,做一些不为人知的事情
- Java开发必装的IntelliJ IDEA插件
- I/O多路转接之poll
- 面向对象(实现相应功能操作)