- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据库第五章 关系数据理论
数据库实用教程(第三版); 第五章 规范化设计
本章讨论如何采用关系模型设计关系数据库。
关键:关系数据库模式的设计。
即:
应该构造几个关系模式?
每个关系模式由哪些属性组成?
如何将这些相互关联的关系模式组建成一个适合的关系模型?
;? 数据依赖的定义、数据依赖与关键码的联系;平凡的FD。;一、关系模式的一般形式:
R U, D, Dom, F ;
R U, D, Dom, F
其中:
U:为组成关系R的全部属性的集合,即U={A1,A2,……An}。
D:为域的集合,即属性的取值范围的集合。
Dom:为U与D之间的映象,即Dom:U?D| Dom安全约束集。
F:为属性U上的 一组约束,即数据依赖集。; 设计关系数据库的核心问题是关系模式的设计。
对于一个数据库设计,可以有多个关系模式的选择。
按照什么原则来选择关系模式?
标准是什么?
如何实现?
;二.关系模式的存储异常问题
在数据管理中,数据冗余一直是影响系统性能的大问题。
数据冗余是指同一个数据在系统中多次重复出现。
;存在的问题:
①??数据冗余
②? 修改异常
③ 插入异常
④ 删除异常
;;一般而言,规范化设计关系模式,是将结构复杂的关系分解成结构简单的关系,从而把不好的关系数据库转变成较好的关系数据库。;首先讨论一个关系属性间不同的依赖情况,讨论如何根据属性间的依赖情况来判定关系是否具有某些不合适的性质。
通常按属性间依赖情况来区分关系规范化的程度为第一范式、第二范式、第三范式、BC范式和第四范式等。
然后直观地描述如何将具有不合适性质的关系转换为更合适的形式。 ;数据依赖:
把数据之间存在的联系称为“数据依赖”。
数据依赖描述的是属性与属性之间的对应关系。; ⒈函数依赖定义:
设关系模式R(U,F):
U是属性全集,F是U上的函数依赖集,X和Y 是U的子集。
如果对于R(U)的任意一个可能的关系r,对于X的每一个具体值,Y都有唯一的具体的值与之对应,则称X函数决定Y,或Y函数依赖于X,记X→Y。 我们称X为决定因素,Y为依赖因素。
当Y不函数依赖于X时,记作:X Y。当X→Y且Y→X时,则记作:X Y。 ; 有一个关于学生选课、教师任课的关系模式:
R={SNO,SNAME,CNO,GRADE,CNAME,TNAME,TAGE}
每个学号只能有一个学生姓名:
SNO → SNAME
每个课程号只能决定一门课程:
CNO → CNAME
每个学生每学一门课程,有一个成绩:
(SNO,CNO)→ GRADE
还可以写出哪些FD?
;函数依赖与属性间的联系类型有关
① 在一个关系模式中,如果属性X与Y有1:1联系时,则存在函数依赖X→Y,Y→X,即X Y。
例如,当学生没有重名时,SNO SNAME。
② 如果属性X与Y有m:1的联系时,则只存在函数依赖X→Y。
例如,SNO与AGE,DEPT之间均为m:1联系,所以有SNO→AGE ,SNO→DEPT。
③ 如果属性X与Y有m:n的联系时,则X与Y之间不存在任何函数依赖关系。
例如,一个学生可以选修多门课程,一门课程又可以为多个学生选修,所以SNO与CNO之间不存在函数依赖关系。
; 由于函数依赖与属性之间的联系类型有关,所以在确定属性间的函数依赖时,可以从分析属性间的联系入手,便可确定属性间的函数依赖。 ;An Introduction to Database System;⒉ 函数依赖的基本性质(推理规则)
(1) 自反性
若Y是X的子集,X是U的子集,则X → Y。
例如,(SNO,CNO)→SNO和(SNO,CNO)→CNO。
(2)复合性
若X→Y且W→Z,则(X,W)→(Y,Z)。
例如,SNO→(SN,AGE),DEPT→MN,则有(SNO,DEPT)→(SN,AGE,MN)。
;(3) 合并性
若X→Y且X→Z则必有X→(Y,Z)。
例如,SNO→(SN,AGE),SNO→DEPT,则有SNO→(SN,AGE,DEPT)。
(4) 分解性
若X→(Y,Z),则X→Y且X→Z。很显然,分解性为合并性的逆过程。
;由合并性和分解性,很容易得到以下事实:
X→A1,A2,…,An成立的充分必要条件是X→A
原创力文档


文档评论(0)