博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
数据库第三范式
阅读量:5768 次
发布时间:2019-06-18

本文共 517 字,大约阅读时间需要 1 分钟。

hot3.png

第一范式(1NF):无重复的列

每一个属性都是原子项,不可分割。1NF是关系模型应具备最起码的条件,如果数据库设计不能满足第一范式,就不称为关系数据库。

第二范式(2NF):属性完全依赖主键

第二范式要满足以下的条件:首先要满足第一范式,其次每个非主属性要完成函数依赖与候选健,或者主键。也就是说,每个非主属性都是由整个主键函数决定的,而不能由主键的一部分来决定。第二范式要求数据库表中的每个实例或行必须可以被唯一的区分。简而言之,第二范式就是属性完全依赖于主键。

第三范式(3NF):属性不依赖于其他非主属性

满足第三范式必须先满足第二范式。简而言之,第三范式要求一个数据库表中不包含已在其他表中已包含的非关键字信息。例如,存在一个部门信息表,其中每个部门有部门编号(dept_id)、部门名称、部门简介等信息。那么在员工信息表中列出部门标号后就不能再将部门名称、部门简介等与部门有关的信息再加如员工信息表中。如果不存在部门信息表,则根据第三范式也应该构建它,否则就会有大量的数据冗余。简而言之,第三范式就是属性不依赖于其他非主属性。

转载于:https://my.oschina.net/yueguanqun/blog/70632

你可能感兴趣的文章
使用sstream读取字符串中的数字(c++)
查看>>
树莓派下实现ngrok自启动
查看>>
javascript静态类型检测工具—Flow
查看>>
MachineLearning-Sklearn——环境搭建
查看>>
node学习之路(二)—— Node.js 连接 MongoDB
查看>>
Goroutine是如何工作的?
查看>>
《深入理解java虚拟机》学习笔记系列——垃圾收集器&内存分配策略
查看>>
TriggerMesh开源用于多云环境的Knative Event Sources
查看>>
GitLab联合DigitalOcean为开源社区提供GitLab CI免费托管
查看>>
通过XAML Islands使Windows桌面应用程序现代化
查看>>
区块链现状:从谨慎和批判性思维看待它(第二部分)
查看>>
苹果公司透露Siri新发音引擎的内部原理
查看>>
GCM 3.0采用类似方式向Android、iOS和Chrome发送消息
查看>>
如何成为一家敏捷银行
查看>>
Oracle在JavaOne上宣布Java EE 8将会延期至2017年底
查看>>
Javascript 深入浅出原型
查看>>
简单之极,搭建属于自己的Data Mining环境(Spark版本)
查看>>
Ruby 2.5.0概览
查看>>
如何通过解决精益问题提高敏捷团队生产力
查看>>
Comment2Wechat —— Typecho 插件
查看>>