数据库三大范式
来源:互联网 发布:linux 文件夹大小排序 编辑:程序博客网 时间:2024/05/18 02:06
第一范式:
要求表的每个字段必须是不可分割的独立单元
第二范式:(一般单个主键都会满足第二范式的)
在第一范式的基础上,要求每张表只表达一个意思,表的每个字段都和表的主键
有依赖
(不能有部分依赖(对于联合主键而言的),某些字段仅仅由联合主键中的一个就可以决定了,那样就不满足第二范式,
总的来说就是如果满足第二范式,那么非主属性字段必须由两个主键(对于联合主键)同时决定时才能够确定,仅由其
中一个主键是不能决定的)
第三范式:
在第二范式的基础上,要求每张表的主键之外的其它字段都只能和主键有直接
决定依赖关系
(不能有传递依赖,比如 :学号 姓名 所在系 系名称 系地址 ;学号可以决定所在系,所在系又可以决定系地址,
存在传递依赖,也就是说学号不能直接决定系地址。解决方法是它分为学生表和院系表,S(SNO,SNAME,DNO ) D(DNO,DNAME,LOCATION))
要求表的每个字段必须是不可分割的独立单元
第二范式:(一般单个主键都会满足第二范式的)
在第一范式的基础上,要求每张表只表达一个意思,表的每个字段都和表的主键
有依赖
(不能有部分依赖(对于联合主键而言的),某些字段仅仅由联合主键中的一个就可以决定了,那样就不满足第二范式,
总的来说就是如果满足第二范式,那么非主属性字段必须由两个主键(对于联合主键)同时决定时才能够确定,仅由其
中一个主键是不能决定的)
第三范式:
在第二范式的基础上,要求每张表的主键之外的其它字段都只能和主键有直接
决定依赖关系
(不能有传递依赖,比如 :学号 姓名 所在系 系名称 系地址 ;学号可以决定所在系,所在系又可以决定系地址,
存在传递依赖,也就是说学号不能直接决定系地址。解决方法是它分为学生表和院系表,S(SNO,SNAME,DNO ) D(DNO,DNAME,LOCATION))
0 0
- 数据库三大范式
- 数据库三大范式
- 数据库三大范式
- 数据库三大范式
- 数据库三大范式
- 数据库三大范式
- 数据库三大范式
- 数据库三大范式
- 数据库三大范式
- 数据库三大范式
- 数据库三大范式
- 数据库三大范式
- 数据库三大范式
- 数据库三大范式
- 数据库三大范式
- 数据库三大范式
- 数据库三大范式
- 数据库三大范式
- 常用JS代码段 (JS获取地址栏get参数 JS判断手机访问等)
- [LeetCode-Java]16. 3Sum Closest
- 使用CSDN-markdown编辑器
- Android_Note(一)——主题界面设计
- 常用排序算法之希尔排序
- 数据库三大范式
- Revit开发之获取房间边界
- Linaro GCC不支持arm926ej-s
- CentOS7 ping通 telnet不通
- Dynamics CRM2016 Web API获取实体元数据Picklist属性的Text&Value
- /dev/zero和/dev/null
- 模板方法模式详解(包含与类加载器不得不说的故事)
- HashMap的实现原理
- js获取滚动条距离浏览器顶部,底部的高度