第三范式 (3NF)定义

3NF建立在2NF之上,它要求所有的非主键列都必需直接依赖于主键,不包括任何传递依赖(Transitive Dependency)。这里的传递依赖指的是从A→B,B→C,所以可以从A→C。具体含意参见以下示例。

举例来说明,比如有课程Student表如下所示。
【Student 表】

学生编号 学生姓名 户口所在地 户口所在省
1 张小成 合肥 安徽
2 李百义 南京 江苏
3 王右佐 保定 河北

在这张表中通常学生编号就能确定学生户口所在地,而通过户口所在地即可确定户口所在省。即学生编号户口所在地户口所在省,所以 学生编号户口所在省 是传递依赖关系,户口所在省就是冗余的。

修改

【Student 表】

学生编号 学生姓名 户口所在地
1 张小成 合肥
2 李百义 南京
3 王右佐 保定

小结

3NF是指一个表中的列应该与主键或者这个表所表示的对象直接关联,而不是间接关联。这样,才能够将依赖降低至最小,从而便于数据的日常管理和维护。

相关文章

[1] 三大范式详解,https://www.cnblogs.com/ktao/p/7775100.html
[2] https://www.tutorialspoint.com/sql/second-normal-form.htm
[3] https://www.studytonight.com/dbms/database-normalization.php

第三范式 (3NF)定义相关推荐

  1. 关系规范化之满足第三范式3NF的函数依赖保持分解算法

    满足第三范式3NF的函数依赖保持分解算法 ------------------------------------------------------------------------------- ...

  2. 第一范式1NF、第二范式2NF、第三范式3NF详解

    第一范式1NF:表的每个属性必须具有原子(单个)值. 第二范式2NF:而 2NF 告诉我们一张表就是一个独立的对象,一张表只 表达一个意思.每个非主键属性依赖于主键,依赖于整个主键". 第三 ...

  3. 数据库第一范式1NF,第二范式2NF,第三范式3NF详解

    文章目录 一,超码.主码.候选码之间的定义与联系 二,函数依赖. 三,三大范式 第一范式(1NF): 第二范式(2NF): 第三范式(3NF): BCNF 一,超码.主码.候选码之间的定义与联系 码是 ...

  4. 第一范式(1NF)、第二范式(2NF)和第三范式(3NF)

    第一范式(1NF):   列1唯一确定列2, 列3, 列4, ...,即列2, 列3, 列4, ...不能再分裂出其它列.   假设有关系模式列1: 订单名; 列2: 商品.一个订单下可以有多个商品, ...

  5. 三张图搞透第一范式(1NF)、第二范式(2NF)和第三范式(3NF)的区别

    第一范式(1NF):   列1唯一确定列2, 列3, 列4, ...,即列2, 列3, 列4, ...不能再分裂出其它列.   假设有关系模式列1: 订单名; 列2: 商品.一个订单下可以有多个商品, ...

  6. 房间计费系统改造——数据库设计

    曾记得.第一次编写机房收费系统的文档模板,整整有12个文档须要编写,只花了两三天的时间就让师傅验收,完结项目.就这样囫囵吞枣的文档编写完毕了. 要知道:欠下的账,终究是要还的.如今到了机房收费系统个人 ...

  7. 计算机软件技术基础考前整理

    第一章 计算机由五个基本部分组成:运算器.控制器.存储器.输入设备.输出设备 程序的三种基本结构(顺序.选择.循环) 1.什么是信息,信息和数据的区别和联系在何处? 信息是经过加工.具有一定含义的且对 ...

  8. 转:数据库关系模式的范式详解

    关系模式的范式 主要有4种范式,1NF,2NF,3NF,BCNF,按从左至右的顺序一种比一种要求更严格.要符合某一种范式必须也满足它前边的所有范式.一般项目的数据库设计达到3NF就可以了,而且可根据具 ...

  9. 数据库导论 关系数据库理论

    1. 数据库理论 数据库是 一系列有价值的信息组成的结构化的集合 (A structured collection of meaningful data). 我们称任何有价值的信息为 数据, (Dat ...

最新文章

  1. 气泡图在开源监控工具中的应用效果
  2. MySQL 数据库常用命令—where like union 排序 分组 连接
  3. 3.以太坊之秘钥文件
  4. 阿里巴巴拿下奥运顶级赞助商
  5. mongo执行逻辑表达式_MongoDB 高级查询
  6. js php 正则差别,JavaScript正则表达式的浏览器的差异
  7. 你和女朋友的婚后老年生活!
  8. springboot springcloud区别_SpringBoot回顾、Spring Cloud初学
  9. arm体系结构与编程_教程:如何学习嵌入式系统(基于ARM平台)
  10. Dnscrypt_wrapper 服务端的安装与配置
  11. 拼多多332亿美金市值超网易,黄铮离目标又近了一步!
  12. PulseAudio VS AudioFlinger(七)
  13. linux 交叉编译 makefile,简单谈谈Makefile和交叉编译工具链
  14. 晒下自己App广告平台积分墙收入,顺便点评几个广告平台
  15. OpenCL中kernel的循环调用
  16. SQl语句学习专题(转)
  17. GitChat软件中的课程、专栏下载脚本,包含各种格式(pdf、markdown)
  18. 红旗桌面4.0正式版最新使用方法和问题解答100例
  19. 微信小程序后台返回的JSON字符串转JSON报错问题解决方案
  20. NSSCTF-SWPU新生赛

热门文章

  1. 视频教程-Excel2013公式用法实例视频教程-Office/WPS
  2. Uipath 处理excel转PDF或者合并PDF(excel to pdf, join pdf files)
  3. 修改datagridView单元格颜色(行颜色,列颜色)
  4. Jenkins + GitLab + CocoaPod 的自动打包平台配置(从build到export success)
  5. Nginx之访问限制模块之 limit_conn 模块、limit_req 模块
  6. 短信黑名单app接收短信优先级权限设置
  7. 十二星座程序猿,谁赚钱最多?
  8. java 校验图片的大小,和比例尺寸
  9. Tableau-参考线
  10. VMware中NAT模式和桥接模式的区别(虚拟机上网设置)