oracle学习之数据库的规范化
2015-03-10 15:31
127 查看
数据库的规范化
首先介绍一下关系型数据库的两个非常重要的概念:主键、实体完整性
主键:是关系型数据库中某列或者某几列的集合,能够唯一的表示关系型数据库的任意一行
实体完整性:主键不能包含空值,并且主键必须能够唯一的表示某一行
数据库三范式:
根据图7-4定义:订单号和商品号是联合主键
第一范式:图7-4的表遵循了第一范式
(1)、所有的键都已定义
(2)、不会出现重复的组
(3)、所有的属性列都依赖于主键
第二范式:
部分依赖:只依赖于部分主键的的依赖关系 图7-4中的商品号、商品名、商品描述、单价形成了部分依赖关系
(1)、该表位第一范式的表
(2)、该表不包含部分依赖
上图的表遵循第二范式
第三范式:
传递依赖:一个或者多个属性依赖于非主键的属性列 图7-4中的供应商名等列依赖于供应商号列,但是供应商号列不是主键
(1)、该表为第二范式的表
(2)、该表不包含传递依赖
上图的表遵循了数据库三范式的规范
首先介绍一下关系型数据库的两个非常重要的概念:主键、实体完整性
主键:是关系型数据库中某列或者某几列的集合,能够唯一的表示关系型数据库的任意一行
实体完整性:主键不能包含空值,并且主键必须能够唯一的表示某一行
数据库三范式:
根据图7-4定义:订单号和商品号是联合主键
第一范式:图7-4的表遵循了第一范式
(1)、所有的键都已定义
(2)、不会出现重复的组
(3)、所有的属性列都依赖于主键
第二范式:
部分依赖:只依赖于部分主键的的依赖关系 图7-4中的商品号、商品名、商品描述、单价形成了部分依赖关系
(1)、该表位第一范式的表
(2)、该表不包含部分依赖
上图的表遵循第二范式
第三范式:
传递依赖:一个或者多个属性依赖于非主键的属性列 图7-4中的供应商名等列依赖于供应商号列,但是供应商号列不是主键
(1)、该表为第二范式的表
(2)、该表不包含传递依赖
上图的表遵循了数据库三范式的规范
相关文章推荐
- 数据库(学习整理)----1--如何彻底清除系统中Oracle的痕迹(重装Oracle时)
- Oracle学习之创建数据库(新建实例)
- 数据库(学习整理)----2--关于Oracle用户权限的授权和收权
- 安装Oracle 9i数据库服务器-转载--数据库开发学习
- Oracle 学习之RAC(六) 安装数据库
- 八、Oracle数据库之学习笔记---Oracle的表的基本查询(5)
- Oracle 学习 Day1 - Oracle 数据库与实例
- 数据库Oracle 学习
- oracle学习笔记----数据库导入导出
- 一篇不错的Oracle数据库学习笔记
- oracle学习.数据库实例的用户创建以及创建连接
- 大学里学习的Oracle课程——数据库创建
- Oracle数据库基础学习DAY4
- oracle 数据库学习 基本结构介绍
- 数据库(mysql oracle)学习小结
- Oracle学习—数据库连接
- Oracle学习(11)---使用rman备份进行数据库的恢复
- Oracle新手最常碰到的6个错误及解决方案--转载--数据库开发学习
- ORACLE学习之路--数据库的存储结构
- oracle数据库学习1