




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、2007年4月19日星期四,兰州理工大学计算机与通信学院,1,数据库设计 规范化理论,数据库原理与应用,Principle and Application of DataBase,2007年4月19日星期四,兰州理工大学计算机与通信学院,2,关系数据库设计中存在的问题,示例: 考虑为管理职工的工资信息而设计一个关系模式。,数据库原理与应用,Principle and Application of DataBase,2007年4月19日星期四,兰州理工大学计算机与通信学院,3,在表中包含着两类信息: 职工个人的工资信息; 各个级别的工资数额。,数据库原理与应用,Principle and App
2、lication of DataBase,问题: 如果我希望知道在这个单位8级工的工资是多少,能否查询到?,2007年4月19日星期四,兰州理工大学计算机与通信学院,4,问题: 插入异常:如果没有职工具有8 级工资,则8 级工资的工资数额就难以插入,数据库原理与应用,Principle and Application of DataBase,删除异常:如果仅有职工赵明具有4级工资,如果将赵明删除,则有关4级工资的工资数额信息也随之删除了。,2007年4月19日星期四,兰州理工大学计算机与通信学院,5,数据冗余:职工很多,工资级别有限,每一级别的工资数额反复存储多次。,数据库原理与应用,Prin
3、ciple and Application of DataBase,更新异常:如果将5级工资的工资数额调为620,则需要找到每个具有5级工资的职工,逐一修改。,2007年4月19日星期四,兰州理工大学计算机与通信学院,6,解决之道:分解 !,数据库原理与应用,Principle and Application of DataBase,2007年4月19日星期四,兰州理工大学计算机与通信学院,7,有关学生的关系模式 S(学号 , 姓名 , 系号 , 主任 , 课程编号 , 成绩 ),它有哪些数据冗余?,数据库原理与应用,Principle and Application of DataBase,
4、2007年4月19日星期四,兰州理工大学计算机与通信学院,8, 规范化理论 问题的提出 针对一个具体问题,如何构造一个合适的数据模式。即应该构造几个关系模式(表),每个关系有那些属性组成?,数据库原理与应用,Principle and Application of DataBase,2007年4月19日星期四,兰州理工大学计算机与通信学院,9,数据库原理与应用,Principle and Application of DataBase,定 义:设R(U)是属性集U上的关系模式。X,Y是U的子集。若对于R(U)的任意一个可能的关系r,r中不可能存在两个元组在X上的属性值相等,而在Y上的属性值不等
5、,则称X函数确定Y或Y函数依赖于X,记为XY。 记号 xy 称x函数确定y,或y函数依赖于x。称X为决定因素。 如 学号 姓名, (学号,课程) 成绩,2007年4月19日星期四,兰州理工大学计算机与通信学院,10,注 意:函数依赖是语义范畴的概念,我们只能根据语义来确定函数依赖。例如在没有同名的情况下,姓名年龄 是成立的,而在有同名的情况下,这个函数依赖就不成立了。 平凡函数依赖:如果X Y,但Y不是X的子集,则称其为非平凡的函数依赖,否则称为平凡的函数依赖。 如(学号,姓名) 姓名 是平凡的函数依赖,数据库原理与应用,Principle and Application of DataBas
6、e,2007年4月19日星期四,兰州理工大学计算机与通信学院,11,函数依赖可分为三类:完全函数依赖,部分函数依赖和传递函数依赖。 定 义:在R(U)中有X、YU,如果XY,并且对于X的任何一个真子集X,都有Y不函数依赖于X,则称Y对X是完全函数依赖的。 定 义:在R(U)中,如果XY,并且对于X的某个真子集X,有XY,则称Y对X部分函数依赖。 定 义:在R(U)中,如果XY(Y不包含于X,X不依赖于Y ),且 YZ,则称Z对X传递函数依赖。,数据库原理与应用,Principle and Application of DataBase,2007年4月19日星期四,兰州理工大学计算机与通信学院,
7、12,例 1:某单位有一资料室,它管理的数据有读者信息、图书信息、借阅信息。 读者信息:借书证号,读者姓名,性别,部门,学历,部门电话,个人电话,电子信箱等; 图书信息:图书编号,分类号,书名,作者,出版社,单价等; 借阅信息:借书证号,图书编号,书名,借出日期,应还日期等。,数据库原理与应用,Principle and Application of DataBase,2007年4月19日星期四,兰州理工大学计算机与通信学院,13,函数依赖关系(读者信息): 借书证号读者姓名 借书证号性别 借书证号部门 借书证号学历 部门部门电话 借书证号个人电话 借书证号电子信箱,数据库原理与应用,Prin
8、ciple and Application of DataBase,2007年4月19日星期四,兰州理工大学计算机与通信学院,14,函数依赖关系(图书信息): 图书编号分类号 图书编号书名 图书编号作者 图书编号出版社 图书编号单价 函数依赖关系(借阅信息): 图书编号书名 借书证号、图书编号,借出日期应还日期,数据库原理与应用,Principle and Application of DataBase,2007年4月19日星期四,兰州理工大学计算机与通信学院,15,多值依赖 函数依赖关系是一种关系模式内属性间较为明显的依赖关系,但是随着人们对关系模式的了解越来越深刻,发现尚有另外的一些依赖关
9、系存在,多值依赖就是其中的一种。例如,有一个课程关系COURSE(如下表所示)。,数据库原理与应用,Principle and Application of DataBase,2007年4月19日星期四,兰州理工大学计算机与通信学院,16,从这个关系中可以看出两点: (1) 该关系的数据冗余很大。 (2) 该关系的属性间有一种有别于函数依赖的依赖关系存在。,2007年4月19日星期四,兰州理工大学计算机与通信学院,17,范式理论 1NF:任一属性不能同时具有多个值(关系中每一分量不可再分。即不能以集合、序列等作为属性值)。 2NF:属性必须完全依赖唯一标识符。 3NF:属性间不存在传递依赖。
10、BCNF:每一个决定因素都包含码。,数据库原理与应用,Principle and Application of DataBase,2007年4月19日星期四,兰州理工大学计算机与通信学院,18,例 2 : R(学号,姓名,课程编号,课程名称,学分,成绩) 唯一标识符(Key): (学号,课程编号),数据库原理与应用,Principle and Application of DataBase,不符合2NF,依赖关系: 学号姓名,课程编号 课程名称, 课程编号学分 ,(学号,课程编号) 成绩,2007年4月19日星期四,兰州理工大学计算机与通信学院,19,例 3 : S(学号,姓名,性别,学院,院
11、长)。 唯一标识符(Key): 学号,数据库原理与应用,Principle and Application of DataBase,不符合3NF,依赖关系: 学号姓名,学号性别,学号学院, 学院院长,2007年4月19日星期四,兰州理工大学计算机与通信学院,20,数据库原理与应用,Principle and Application of DataBase,问题的解决办法:拆分关系(表),2007年4月19日星期四,兰州理工大学计算机与通信学院,21,关于例 2 R(学号,姓名,课程编号,课程名称,学分,成绩) R1 (学号,姓名) R2(课程编号,课程名称,学分) R3(学号,课程编号,成绩)
12、 学号姓名,课程编号 课程名称,课程编号学分, (学号,课程编号) 成绩,数据库原理与应用,Principle and Application of DataBase,2007年4月19日星期四,兰州理工大学计算机与通信学院,22,关于例 3 S(学号,姓名,性别,学院,院长) S1(学号,姓名,性别,学院) S2(学院,院长) 学号姓名,学号性别,学号学院,学院院长,数据库原理与应用,Principle and Application of DataBase,2007年4月19日星期四,兰州理工大学计算机与通信学院,23,例 4:某部队拟建立干部档案,数据项有: 编号,姓名,现军衔,现任职务
13、,入伍日期,最高学历,低级军衔及获得日期,曾担任职务及任命日期,所取得各学历及取得日期。,数据库原理与应用,Principle and Application of DataBase,2007年4月19日星期四,兰州理工大学计算机与通信学院,24,函数依赖关系: 编号姓名,编号现军衔,编号现任职务,编号入伍日期,编号最高学历,编号之前军衔,(编号,低级军衔)获得日期,编号曾担任职务,(编号,曾担任职务)任命日期,编号各学历,(编号,各学历)取得日期,数据库原理与应用,Principle and Application of DataBase,2007年4月19日星期四,兰州理工大学计算机与通信
14、学院,25,表1(编号,姓名,现军衔,现任职务,入伍日期,最高学历) 表2(编号,低级军衔,获得日期) 表3(编号,曾担任职务,任命日期) 表4(编号,学历,取得日期)。,数据库原理与应用,Principle and Application of DataBase,2007年4月19日星期四,兰州理工大学计算机与通信学院,26,规范化步骤 2NF 3NF BCNF 4NF,数据库原理与应用,Principle and Application of DataBase,规范化的目的就是构造合适的关系模式。,2007年4月19日星期四,兰州理工大学计算机与通信学院,27,数据库原理与应用,Princ
15、iple and Application of DataBase,范式之间的关系 定 理: 3NF 2NF。,反证:若R3NF, 但R2NF,则按2NF定义,一定有非主属性部分依赖于码;,设X为R的码,则存在X的真子集S,以及非主属性Z( 其中S 不包含于Z ),使得S Z 成立;,于是在R中存在码X,属性组S,以及非主属性Z,使得XS,SZ 成立,进而有 SX成立;,这与R3NF矛盾, 所以R2NF。,2007年4月19日星期四,兰州理工大学计算机与通信学院,28,数据库原理与应用,Principle and Application of DataBase,定 理:关系模式R(U)若满足BC
16、NF,则必定满足3NF。 证明略,请大家看参考书。,2007年4月19日星期四,兰州理工大学计算机与通信学院,29,模式分解中的问题,实例 表(职工,级别,工资)可以有两种分解途径, 分解一:(职工,工资),(工资,级别),丢失函 数依赖,分解二:(职工,级别),(工资,级别),不同行业机构的不同工资级别会有相同工资数额。按分解一,有可能导致同一职工对应不同的工资级别,从而丢失了有关职工工资级别的信息(丢失了函数依赖:职工级别)。,2007年4月19日星期四,兰州理工大学计算机与通信学院,30,R(A, B, C),AB(R),BC(R),AB(R),BC(R),R(A, B, C),AB(R
17、),BC(R),AB(R),BC(R),有损分解,无损分解,2007年4月19日星期四,兰州理工大学计算机与通信学院,31,将R分解为R1和R2的分解是无损连接分解的条件是,R1R2 R1,或R1R2 R2。 如果有R上的函数依赖X Y成立,且X Y是空集,则分解R Y和X Y是无损连接分解。,数据库原理与应用,Principle and Application of DataBase,2007年4月19日星期四,兰州理工大学计算机与通信学院,32,数据库原理与应用,Principle and Application of DataBase,判定一个分解是否为依赖保持分解的算法比较复杂。请看参考文献。,2007年4月19日星期四,兰州理工大学计算机与通信学院,33,设计目标:无损连接、保持依赖、xNF 无损连接是分解的一个必要条件。BCNF不一定能保持依赖,但3NF可以保证分解是保持依赖的。 因此,在工程中一般分解到3NF。 此外,有时需要对表进行水平分解。,数据库原理与应用,Principle and Ap
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- MY银行供应链金融保理业务流程优化研究
- 全GFRP筋增强混凝土剪力墙抗震性能研究
- 故事力法则下乡村文旅景观规划设计研究-以浙江新昌县棠村村为例
- 环境安全健康之间关系
- 护理质量管理人员培训大纲
- 肺炎性心脏病护理
- 甲状腺结节健康教育及指导
- 在线教育社群运营策划方案
- 护理心脏骤停的急救与后续管理
- 结肠肿瘤科普
- 2022-2023学年北京市东城区高二(下)期末化学试卷(含解析)
- 防溺水老师培训课件
- 《植物生长与环境》课程标准(含课程思政)
- 铁路行车组织(高职)全套教学课件
- 注塑标准成型条件表电子表格模板
- 道闸系统施工方案
- 配置管理与漏洞修复
- 新版中国复发难治性急性髓系白血病诊疗指南
- 保洁巡查记录表
- 成事的时间管理
- 国开大学2023年01月22503《学前儿童健康教育活动指导》期末考试答案
评论
0/150
提交评论