《数据库技术 教学课件 ppt 作者 张俊玲 王秀英 第16章》由会员分享,可在线阅读,更多相关《数据库技术 教学课件 ppt 作者 张俊玲 王秀英 第16章(20页珍藏版)》请在金锄头文库上搜索。
1、第16章 关系模式的规范化,本章将介绍函数依赖概念和如何进行关系模式的规范化。 16.1 问题的提出 16.2 函数依赖与键 16.3 关系模式的范式与规范化,16.1 问题的提出,这个模式存在如下问题。 (1)数据冗余大。 (2)数据不一致性。 (3)操作异常。,16.2 函数依赖与键,16.2.1 函数依赖 学生(学号,姓名,性别,出生日期,专业),函数依赖又分为完全依赖、部分依赖和传递依赖。 例如有一个成绩关系: 成绩(学号,姓名,课程号,课程名,分数),假设一个学生只属于一个班,一个班有一个辅导员,但一个辅导员负责几个班,这样可以得到一个关系: 辅导(学号,班级,辅导员) 此关系的函数
2、依赖关系见图16-3。,16.2.2 键 在一个关系模型中,包含在候选键中的属性称主属性;不包含在候选键中的属性称非主属性。 教师(教师号,姓名,专业,职称,性别,年龄,部门编号) 若属性(或属性组)X并非关系R的主键,而是另一关系的主键时,则属性X是关系R的外部键。,16.3 关系模式的范式与规范化,目前范式包括1NF、2NF、3NF、BCNF、4NF和5NF。 16.3.1 范式与规范化 1第一范式(1NF) 如果关系模式R的每一个属性只包含单一的值,则关系模式R满足1NF。,满足1NF的关系存在以下的问题。 (1)如果删除某门课程的成绩,则将学生的信息(学号和姓名)也一同删除了,出现删除
3、异常。 (2)如果某个学生没有考试成绩,则学生的信息(学号和姓名)也无法输入,出现插入异常。,(3)学生的信息(学号和姓名)重复数据较多,冗余大,这一方面造成存储空间的浪费,另一方面可能会出现数据的不一致。 要解决这些问题,就要将关系score1进一步进行规范,将其变换为满足2NF的关系模式。,2第二范式(2NF) 如果关系模式R满足1NF,而且它的所有非主属性完全依赖于主属性,则关系模式R满足2NF。,3第三范式(3NF) 如果关系模式R满足2NF,而且它的所有非主属性都不传递依赖于主属性,则关系模式R满足3NF。 班级(学号,班级) 辅导(班级,辅导员),16.3.2 数据库规范化应用实例 1分析第16章第1节中关系模式供货(供应商编号,供应商名称,联系方式,商品名称,商品价格)的函数依赖集,并将其规范到第三范式。,供应商编号供应商名称 供应商编号联系方式 (供应商编号,商品名称)商品价格 可以看出这个关系模式存在部分依赖,需要进行分解,转换为以下两个关系: 供应商(供应商编号,供应商名称,联系方式) 供货信息(供应商编号,商品名称,商品价格),2建立一个关于系、学生、班级、学会等信息的关系数据库模型。,