数据库系统与应用(SQLServer)高等学校教材计算机科学与技术1杨城yangcheng@swufe.edu.cn内容概要1、函数依赖2、范式3、模式的规范化学习重难点1、范式第5章关系数据库设计理论2SnoSNameSClassSDpetCNoCNameScoreGrade1001赵洪JS2001计算机C001VFP4901002钱彤KJ2002会计C001VFP4821003孙丽GS2001工商C001VFP4781001赵洪JS2001计算机C015网络380(一)什么是好的关系模式?3数据冗余更新异常插入异常删除异常关系模式:R(U,F)函数依赖:决定因素被决定因素(非平凡函数依赖)(二)基本概念4XYSNOCNOGRADECNAMESCORESNAMESCLASSSDEPT完全函数依赖:部分函数依赖传递函数依赖(候选)码特性:唯一性、最小性(不可约性)主属性非主属性主码外码5FXYPXY属性X、Y之间1-1(如学院和院长)属性X、Y之间m-1(如学号和班级)属性X、Y之间m-n(如学生和课程)函数依赖与属性之间的关系6Armstrong公理Page:142A1自反性:若YX,则XYA2增广性:若XY,则XZYZA3传递性:XY且YZ,则XZ推论:分解规则:若X-YZ,则X-Y,X-Z合成规则:若X-Y,X-Z,则X-YZ伪传递规则:若X-Y,YW-Z,则XW-Z函数依赖公理7范式:关系模式设计所需要满足的规范化条件。不同程度的规范化条件称为不同的范式NF。1NF⊆2NF⊆3NF⊆BCNF目的:使模式结构更合理,消除数据冗余,便于插入、删除和更新。方法:合理分解。(三)模式的规范化81NF:分量不可再分(属性的原子性)9学号姓名所选的全部课程001张三计算机网络,数据结构,数据库002李四数据结构,初级会计学号姓名课程001张三计算机网络001张三数据结构001张三数据库002李四数据结构002李四初级会计2NF:非主属性完全依赖于码10SNOSNAMESCLASSSDEPSNOCNOGRADECNOCNAMESCORE3NF:非主属性不传递依赖于码BCNF:每一个决定因素都包含码例如:CSZ(学生S,课程C,教师T),假设每一教师只教一门课,每门课有若干教师。11SCTSTC1NF消除非主属性对码的部分函数依赖2NF消除非主属性对码的传递函数依赖3NF消除主属性对码的部分依赖/传递依赖BCNF原则:“一事一地”,即一个关系描述一个实体或实体间的一种联系,当多于一个概念时就分离出去。规范的实质就是概念的单一化。规范化步骤124个范式定义:1NF/2NF/3NF/BCNF如何规范化本章总结13习题1关系模式部门(部门号,部门名,部门成员,部门总经理)中的哪个属性使其不满足1NF?关系模式R中的属性全部是主属性,则R的最高范式必定是____。判断题(1)任何一个关系一定有关键字(2)单属性的关系肯定是BCNF。(3)二元关系模式肯定是BCNF。(4)三元关系模式肯定是3NF。(5)全码的关系必然属于BCNF。14写出下列关系的候选码R1(A,B,C,D),F={D-A,D-B};R2(A,B,C,D,E,P),F={A-B,C-P,E-A,CE-D};R3(A,B,C,D,E),F={A-D,E-D,D-B,BC-D,DC-A};习题215试说明下列关系模式最高属于第几范式:R4(A,B,C),F={A-B,B-A,C-A};R5(A,B,C,D),F={A-C,D-B};R1(A,B,C,D),F={B-D,AB-C};R2(X,Y,Z),F={Y-Z,Y-X,X-Y};R3(A,B,C,D),F={B-D,D-B,AB-C};R6(A,B,C,D,E),F={AB-CE,E-AB,C-D};习题316设某学校数据库有如下的关系模式R(教师编号,教师姓名,所属部门,借阅图书编号,图书名称,借书日期,还书日期,备注)请根据你的生活经验判断:(1)该关系模式的候选码是什么?(2)该关系最高满足第几范式?习题417设关系模式R(A,B,C,D,E,F),F={A-D,E-D,D-B,BC-D,EC-A}。试求:(1)R的候选码;(2)R所属的范式;(3)将R分解为BCNF习题518设某商业关系模式R(商店编号,商品编号,库存数量,部门编号,负责人)(1)每个商店的每种商品只在一个部门销售;(2)每个商店的每个部门只有一个负责人;(3)每个商店的每种商品只有一个库存数量试解答下列问题:(1)写出R的基本函数依赖;(2)找出R的候选码;(3)试问R最高已经达到第几范式;(4)如果R不属于3NF,请将R规范化到3NF。习题619某个应用涉及2个实体集,相关属性如下:R(A#,A1,A2,A3)S(B#,B1,B2)其中A#,B#为各自的关键字,若从实体集R到S存在多对一的联系,联系属性为C。试问:(1)单一关系模式RS(A#,A1,A2,A3,B#,B1,B2,C)的候选码是什么?(2)假设RS的F={A#-A1A2A3,B#-B1B2,A1-A3},则RS最高满足第几范式?(3)依据2题的函数依赖集F设计满足BCNF的关系模型。习题720