三楚白云生佛手,九江寒月照禅心。
——李日华《佛手岩》

文章目录

  • 前言
  • 一、第一范式(1NF)
  • 二、第二范式(2NF)
  • 三、第三范式(3NF)
  • 四、参考学习视频
  • 五、名词解释&知识扩展
  • 总结

前言

第一范式,第二范式和第三范式的概念和具体实例学习。


一、第一范式(1NF)

  1. 第一范式1NF核心原则就是:属性不可切割。
  2. 第一范式是所有关系型数据库的最基本要求。

下表中“5台电脑”不符合第一范式

id 商品
001 5台电脑

符合第一范式的表格设计如下

id 商品 数量
001 电脑 5

二、第二范式(2NF)

  1. 第二范式2NF核心原则:不能存在部分函数依赖。

下表的主键是学号和课名,分数完全依赖于学号和课名,但姓名并不完全依赖于学号和课名(姓名依赖于学号,通过学号可以确定学生姓名)。

学号 姓名 系名 系主任 课名 分数
1022211101 李小明 经济系 王强 高等数学 95
1022211101 李小明 经济系 王强 大学英语 87
1022211101 李小明 经济系 王强 普通化学 76
1022211102 张莉莉 经济系 王强 高等数学 72
1022211102 张莉莉 经济系 王强 大学英语 98
1022211102 张莉莉 经济系 王强 普通化学 88

拆表如下,满足第二范式

学号 课名 分数
1022211101 高等数学 95
1022211101 大学英语 87
1022211101 普通化学 76
1022211102 高等数学 72
1022211102 大学英语 98
1022211102 普通化学 88
学号 姓名 系名 系主任
1022211101 李小明 经济系 王强
1022211102 张莉莉 经济系 王强

三、第三范式(3NF)

  1. 第三范式3NF核心原则:不能存在传递函数依赖

下表存在传递函数依赖:学号>系名>系主任,但是系主任推不出学号

学号 姓名 系名 系主任
1022211101 李小明 经济系 王强
1022211102 张莉莉 经济系 王强

再次拆表,满足第三范式

学号 姓名 系id
1022211101 李小明 001
1022211102 张莉莉 001
系id 系名 系主任
001 经济系 王强

四、参考学习视频

学习视频出处

五、名词解释&知识扩展

  1. 1NF中,NF是normal form缩写。
  2. 关系型数据库的范式一共有六种,分别是第一范式(1NF)、第二范式(2NF)、第三范式(3NF)、巴斯-科德范式(BCNF)、第四范式(4NF)和第五范式(5NF)。

总结

三楚白云生佛手,九江寒月照禅心。出自明代李日华,三楚的云雾从佛手岩上缓缓升起,九江那皎洁的月光洒在我的身上,顿生禅意。“三楚”对“九江”,“白云”对“寒月”,“生佛手”对“照禅心”,对仗工整。
第一范式,第二范式,第三范式也是类似的作用,为的是让数据库架构更加整齐规范,方便管理,实际工作中应该以此为设计准则。

第一范式第二范式第三范式学习笔记相关推荐

  1. MySQL (4) 第一范式 第二范式 第三范式 BC范式

    第一范式 第一范式:所有属性都是不可分割的原子值. 也就是每个属性都是不可再分的. 例如下图就不符合第一范式的要求 实际上,1NF是所有关系型数据库的最基本要求,你在关系型数据库管理系统(RDBMS) ...

  2. 第一范式 第二范式 第三范式 BC范式

    第一范式 第一范式:所有属性都是不可分割的原子值.  也就是每个属性都是不可再分的.  例如下图就不符合第一范式的要求   实际上,1NF是所有关系型数据库的最基本要求,你在关系型数据库管理系统(RD ...

  3. 第一范式 第二范式 第三范式理解

    数据库中设计一个好的标准化范式能大大减少数据冗余,增强数据的易操作性. 范式的演变: 第一范式:表中没有重复数据组 属性不可以再分,具有一个主键(主键组) 例如: 出现从重复的数据组,把它转换为第一范 ...

  4. 软件设计师学习笔记-数据库系统

    目录 数据库系统 三级模式-两级映射 数据库设计过程 E-R模型 关系代数 规范化理论-函数依赖 规范化理论-价值与用途​ 规范化理论-键 规范化理论-求候选键 规范化理论-范式 规范化理论-模式分解 ...

  5. B站《一天学会 MySQL 数据库》学习笔记

    B站<一天学会 MySQL 数据库>学习笔记 老司机带我飞 职场十字诀:思考.计划.行动.总结.反思 ​关注他 4 人赞同了该文章 登录和退出MySQL服务器 # 登录MySQL $ my ...

  6. 学习笔记 mysql_MySQL 学习笔记

    MySQL 学习笔记 1 定义 数据库中的表:一行叫一条记录.每一列叫一个属性,或一个字段. 主键:表中的某个特殊字段,具有唯一的确定的值,可以根据该字段唯一的确定一条记录 外键:表中的某个字段的值为 ...

  7. MySQL学习笔记05【多表操作、三大范式、数据库的备份和还原】

    MySQL 文档-黑马程序员(腾讯微云):https://share.weiyun.com/RaCdIwas 1-MySQL基础.pdf.2-MySQL约束与设计.pdf.3-MySQL多表查询与事务 ...

  8. MySQL学习笔记8:权限管理、数据库备份与设计

    1.前言 学习视频源自:[狂神说Java]MySQL最新教程通俗易懂 B站视频链接:https://www.bilibili.com/video/BV1NJ411J79W [狂神说Java]MySQL ...

  9. MySQL面试题学习笔记

    必做题目:https://sqlzoo.net/wiki/SELECT_basics/zh 常见的SQL面试题:经典50题,知乎:https://zhuanlan.zhihu.com/p/383540 ...

最新文章

  1. Codeforces 911F Tree Destruction
  2. urllib2介绍(转)
  3. 【编程通识】PlantUML绘制时序图样例
  4. 计算机进入休眠状态后,Win7电脑进入休眠状态后又自动重启该怎么处理
  5. 怎么强制弹出窗口永远在最前面
  6. 百度地图坐标系统应用
  7. Python return语句 函数返回值
  8. FULENT软件测试自学,fluent网格质量检查 - 仿真模拟 - 小木虫 - 学术 科研 互动社区...
  9. 判断图有无环_汽车 AEB 驾驶员在环系统建立
  10. 基于北斗观测值的智能手机GNSS定位研究
  11. mysql sqlyog 乱码_SQLyog中文乱码的解决方法
  12. python模拟浏览器访问企查查_python爬虫另辟蹊径绕过企查查的登录验证,我太冇财了...
  13. 复音合成器插件-Arturia Pigments 3.0.0 WiN-MAC
  14. 大学开设大数据专业,都安排了哪些课程?
  15. iosetup mysql_InnoDB: Error: io_setup() failed with EAGAIN
  16. Python复盘股票_3. 超短的复盘框架
  17. Java-Map-详解
  18. markdown符号使用
  19. 认知升级|系列2|复利思维
  20. SDL解析——SDL简介

热门文章

  1. php解析mht,php解析mht文件转换成html
  2. 数字信号处理实验matlab版答案刘舒帆,数字信号处理实验(MATLAB版) 刘舒帆,费诺,陆辉 西安电子科技大学出版社 9787560620060...
  3. Bootstrap制作虚拟系统初始版本(无聊随便做的)
  4. minio分布式解决方案
  5. 处理服务器上的挖矿木马小记
  6. 商城小程序系统,商城源码
  7. 智能密集型仓储货架自动化立体库|四向穿梭式货架对于仓库空间面积上有什么要求?
  8. VC2008 Redist依赖安装 win10下报1935失败解决
  9. 1400协议是什么和28181区别_28181平台对接接口详解
  10. 《数据挖掘原理与实战》教程网盘下载