[理学]第5章 关系数据库的规范化设计.pptVIP

[理学]第5章 关系数据库的规范化设计.ppt

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[理学]第5章 关系数据库的规范化设计

第五章 关系数据库的规范化设计 研究目的: 针对一个具体问题,应该构造几个关系,每个关系由哪些属性组成等。 5.1 数据依赖 5.1.1关系模式中的数据依赖 关系模式 R(U,D,DOM,I,F) 其中:R是关系名, U是R的属性集合{A1, A1, … ,An}, D是U中属性域的集合{ D1, D1, … ,Dn }, DOM是U到D的映射, I是完整性约束集合, F是属性间的数据依赖关系集合。 影响数据库模式设计的主要是U和F,可将关系模式简化为一个三元组: R(U,F) 当且仅当U上的一个关系r满足F时,r称为关系模式R(U,F)的一个关系。 5.1.2 数据依赖对关系模式的影响 两种依赖: 函数依赖(functional dependency,简记为 FD) 多值依赖(multivalued dependency,简记为 MVD) 例:假设学校的数据库模式由一个单一的关系模式 Student构成,则该关系模式的属性集合为 U=( Sno,Sdept,Mname,Cname,Grade ) 其中,学生的学号(Sno)、所在系(Sdept)、系主任姓名(Mname)、课程名(Cname)和成绩(Grade)。 该关系模式存在多种不良的函数依赖,不是好的关系。 这个关系模式存在4个问题: ①数据冗余大:系主任名重复出现。 ②更新异常(更新代价大):某系更换系主任后,系统必须修改与该系学生有关的每一个元组。 ③插入异常:如果一个系刚成立,尚无学生,就无法把这个系及其系主任的信息存入数据库。 ④删除异常:如果某个系的学生全部毕业了,在删除该系学生信息的同时,把这个系及其系主任的信息也丢掉了。更新代价大 5.1.3 有关概念 1.函数依赖(超码) 定义5.1 2.平凡函数依赖与非平凡函数依赖 定义5.2 在关系模式R(U)中,对于U的子集X和Y,如果X?Y,但Y?X,则称X?Y是非平凡函数依赖。 若Y ? X,则称X?Y称为平凡函数依赖。 3.完全函数依赖与部分函数依赖 定义5.3 在关系模式 R(U)中,如果X?Y,并且对于X的任何一个真子集X’,都有 则称Y完全函数依赖于X(侯选码),记作 例: (Sno,Cname) ?Grade 若X?Y,但Y不完全函数依赖于X,则称Y部分函数依赖于X,记作 例: (Sno,Sname) ? Sdept 4.传递函数依赖 定义5.4 在关系模式 R(U)中,如果X?Y,且Y? X(无此约束,则X? Z ),且 则称Z传递函数依赖于X。记作:X ? Z 5.候选码(键) 5.2 范 式 范式是符合某一种级别的关系模式的集合。关系数据库中的关系满足不同程度要求的为不同范式。主要有六种范式:第一范式、第二范式、第三范式、 BC范式、第四范式和第五范式。 满足最低要求的叫第一范式,简称为1NF。各种范式之间存在联系: 1NF?2NF?3NF?BCNF?4NF?5NF 通常把某一关系模式R为第n范式简记为R∈nNF。 5.2.1 第一范式(1NF) 定义5.6 如果一个关系模式 R的所有属性都是不可分的基本数据项,则R∈1NF。 第一范式的关系模式并不一定是好关系模式。 例如: SLC(Sno,Sdept,Sloc,Cno,Grade) 其中Sloc为学生住处,假设每个系的学生住在同一个地方。 SLC关系存在以下4个问题: ①插入异常:假若要插入一个Sno=95102,Sdeptc=IS,Sloc=N,但还未选课的学生,即这个学生无Cno,这样的元组不能插入SLC中。 ②删除异常:假定某个学生只选一门课,如95022只选3号课程修了一门课。现在连3号课程他也不选修了。那么3号课程这个数据项就要删除不应删除的信息。 ③数据冗余度大:如果一个学生选修了10门课程,那么他的Sdept和Sloc值就要重复存储10次。 ④修改复杂:某个学生从数学系(MA)转到信息系(IS),这本来只需修改此学生元组中的

文档评论(0)

hhuiws1482 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:5024214302000003

1亿VIP精品文档

相关文档