- 1、本文档共33页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
国家“十一五”规划教材数据库原理与应用教程(第4版)第6章 关系数据库规范化理论6.1 函数依赖6.1.1函数依赖基本概念6.1.2一些术语和符号6.1.3 为什么要讨论函数依赖 6.2 关系规范化 6.2.1 关系模式中的码6.2.2 范式 6.1 一些数据语义问题数据的语义不仅表现为完整性约束,对关系模式的设计也提出了一定的要求。如何构造一个合适的关系模式,应构造几个关系模式,每个关系模式由哪些属性组成等,都是数据库设计问题,确切地讲是关系数据库的逻辑设计问题。6.1.1函数依赖基本概念 省=f(城市):只要给出一个具体的城市值,就会有唯一一个省值和它对应,如“武汉市”在“湖北省”,这里“城市”是自变量X,“省”是因变量或函数值Y。把X函数决定Y,或Y函数依赖于X表示为: X→Y如果有关系模式R(A1,A2,…,An),X和Y为{A1,A2,…,An}的子集,则对于关系R中的任意一个X值,都只有一个Y值与之对应,则称X函数决定Y,或Y函数依赖于X。 示例例1:对学生关系模式 Student(Sno, Sname, Sdept, Sage)有以下依赖关系: Sno→Sname, Sno→Sdept, Sno→Sage 例2: SC(Sno, Cno, Grade) (Sno, Cno)→Grade 函数依赖定义设有关系模式R(A1,A2,…,An),X和Y均为{A1,A2,…,An}的子集,r是R的任一具体关系,t1、t2是r中的任意两个元组;如果由t1[X]=t2[X]可以推导出t1[Y]=t2[Y],则称X函数决定Y,或Y函数依赖于X,记为X→Y。在以上定义中特别要注意,只要 t1[X]=t2[X] t1[Y]=t2[Y]成立,就有X→Y。也就是说只有当t1[X]=t2[X]为真,而t1[Y]=t2[Y]为假时,函数依赖X→Y不成立;而当t1[X]=t2[X]为假时,不管t1[Y]=t2[Y]为真或为假,都有X→Y成立。 6.1.2 一些术语和符号 1.?如果X→Y,但Y不包含于X,则称 X→Y是非平凡的函数依赖。 2 .?如果X→Y,但Y包含于X,则称 X→Y是平凡的函数依赖。 若无特别声明,我们讨论的都是非平凡的函数依赖。术语和符号(续) 3.?如果X→Y,则X称为决定因子。 4. 如果X→Y,并且Y→X,则记作 X←→Y。术语和符号(续)如果X→Y,并且对于X的一个任意真子集X’ 都有X’—/→Y,则称Y完全函数依赖于X,并记作:如果X→Y成立,并且对于X的某个真子集X’ 有X’→Y成立,则称Y部分函数依赖于X,并记作:如果X→Y(非平凡函数依赖,并且Y—/→X)、Y→Z,则称Z传递函数依赖于X,记作:示例例1:有关系模式SC(Sno,Sname,Cno,Credit,Grade),主码为(Sno, Cno),则函数依赖关系有: 示例例2:假设有关系模式S( Sno,Sname,Dept,Dept_master),其中各属性分别为:学号、姓名、所在系和系主任(假设一个系只有一个主任),主码为Sno,则函数依赖关系有: 6.1.3 为什么要讨论函数依赖?有关系模式: S-L-C(Sno,Sdept,SLOC,Cno,Grade)SnoSnameSsexSdeptSlocCnoGrade9512101李勇男计算机系2公寓c01909512101李勇男计算机系2公寓c02869512101李勇男计算机系2公寓c06NULL9512102刘晨男计算机系2公寓c02789512102刘晨男计算机系2公寓c04669521102吴宾女信息系1公寓c01829521102吴宾女信息系1公寓c02759521102吴宾女信息系1公寓c04 929521102吴宾女信息系1公寓c05 509521103张海男信息系1公寓c02689521103张海男信息系1公寓c06NULL9531101钱小平女数学系1公寓c01809531101钱小平女数学系1公寓c0595存在问题数据冗余问题 数据更新问题 数据插入问题 数据删除问题结论Student关系模式不是一个好的模式。“好”的模式:不会发生插入异常、删除异常、更新异常,数据冗余应尽可能少。原因:由存在于模式中的某些数据依赖引起解决方法:通过分解关系模式来消除其中不合适的数据依赖6.2 关系规范化关系规范化是指导将有“不良”函数依赖的关系模式转换为良好的关系模式的理论。这里涉及到范式的概念,不同的范式表示关系模式遵守的不同的规则。 6.2.1 关系模式中的码 候选码:设K为R (U,F)中的属性或属性组,若K完全决定U,则K为R的候选码。 主码:关系R (U,F)中可能有多个候选码,则选其中一个作为主码。 全码:候选码为整个属性组。 包含在任一候选码中的属性称为主属性,不包含在
文档评论(0)