oracle三范式的理解
来源:互联网 发布:php交友源码 编辑:程序博客网 时间:2024/05/25 19:58
第一范式:数据记录是唯一的,列不可以再拆分。表现为要有主键,确保记录是唯一的。列不能再细分:姓名:1)firstName 2)lastName
第二范式:表现为一对多或者多对多的情况,数据不要放到一张表内,拆分为主从表关系。
第三范式:消除传递依赖。表现非主键字段只依赖主键,其它的依赖关系独立成表,通过外键关联。
所谓传递函数依赖,指的是如 果存在"A → B → C"的决定关系,则C传递函数依赖于A。因此,满足第三范式的数据库表应该不存在如下依赖关系:
关键字段 → 非关键字段x → 非关键字段y
假定学生关系表为Student(学号, 姓名, 年龄, 所在学院, 学院地点, 学院电话),关键字为单一关键字"学号",因为存在如下决定关系:
(学号) → (姓名, 年龄, 所在学院, 学院地点, 学院电话)
这个数据库是符合2NF的,但是不符合3NF,因为存在如下决定关系:
(学号) → (所在学院) → (学院地点, 学院电话)
即存在非关键字段"学院地点"、"学院电话"对关键字段"学号"的传递函数依赖。
它也会存在数据冗余、更新异常、插入异常和删除异常的情况,读者可自行分析得知。
把学生关系表分为如下两个表:
学生:(学号, 姓名, 年龄, 所在学院);
学院:(学院, 地点, 电话)。
0 0
- oracle三范式的理解
- 三范式的理解
- 数据库三范式的理解
- Oracle的三大范式
- 对数据库三大范式及BC范式的理解
- 数据库中三范式的理解
- 对数据库三范式的理解
- 第一,二,三,BC范式的理解
- Sql Server三范式的理解
- 数据库三大范式的理解
- 数据库三大范式的理解
- 理解数据库设计的三大范式
- 关于数据库三大范式的理解
- 对数据库三范式的理解
- 数据库三种范式的理解
- 简单的理解数据库三范式
- 简单易懂的数据库三范式理解
- MySQL设计之三范式的理解
- Asp.net Data list control show Image example
- 浏览器中输入一个url后回车,后台发生了什么
- Oracle 集合运算符
- 触摸屏幕
- PS4蓝牙手柄分析之1
- oracle三范式的理解
- 动画教程(五)
- 快速傅里叶变换FFT结果的物理意义
- NoSQL知识总结
- jQuery的deferred对象详解
- DWR如何获得返回对象 list Map Set list.add(JavaBean)
- loadrunner监控Apache资源
- zxing 2.3 生成jar包,并使项目正常运行
- Firefly官方教程之Netconnect使用文档