云数据库应用(MySQL) 第1章 第3讲—关系规范化.pptxVIP

云数据库应用(MySQL) 第1章 第3讲—关系规范化.pptx

  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级范式(Normal Form),分别称为1NF,2NF,3NF(BCNF),4NF和5NF。 规范化程度较高的范式是较低范式的子集,一个低一级范式的关系模式,通过分解可以转换为若干个高一级范式的关系模式,这个过程称为关系的规范化。 关系规范化的基本方法是逐步消除关系模式中不恰当的数据依赖,使关系模式达到某种程度的分离,用一个关系来表达一事或一物。 ;定义 如果关系模式R的每个属性都是不可分解的,则称R属于1NF。 第一范式是对关系的最低要求。 示例:判断哪一张表是1NF? ;第一范式可能存在的问题: 数据冗余:如各位老师的信息重复。 插入异常:如果要插入刘老师的个人信息,但刘老师未开课,会造成缺关键字“学号”、“课程号”。 删除异常:当要删除 课程号=“C3” 的元组,会丢失李老师的信息。 修改量大。 ;定义 如果关系模式R为第一范式,且R中每个非主属性完全函数依赖于R的主码,则称R属于2NF。 示例 下列关系模式是1NF,是否是2NF?为什么? SCD(学号,姓名,课程号,成绩,系名,系主任) 主码为复合码:学号+课程号 解决方法:消除部分函数依赖。 ;8;9;分解为3NF的方法: 把直接对主码函数依赖的非主属性与决定它们的主码放在一个关系模式中。 把造成传递函数依赖的决定因素连同被它们决定的属性放在一个关系模式中。 检查分解后的新模式,如果不是3NF,则继续按照前面的方法进行分解,直到达到要求。 关系模式SD的分解结果如下: SD1(学号,姓名,系名) SD2(系名,系主任) ;BCNF:关系模式R的所有非主属性依赖于整个主属性,则称R满足BCNF。BCNF是比3NF更高级别的范式。 根据BCNF的定义,可以知道满足BCNF的关系模式具有以下特点: 所有非键属性对每一个键属性都是完全函数依赖; 所有的键属性对每一个不包含它的键也是完全函数依赖; 没有任何属性完全??数依赖于非键的任何一组属性。;例如,要学生关系模式S (学号,姓名,性别,出生日期,系名)中,如果姓名有重名的情况,则主键学号是该模型唯一决因素,所以S是BCNF范式;如果姓名没有重名,则学号和姓名都是候选键,且除候选键外,该模型没有其它决定因素,所以S仍是BCNF范式。 例如:设关系模式S-T-J(学生,教师,课程)。 其中:每位教师只教一门课程;每门课程有若干教师;某一学生选定某门课后就只有一位固定教师授课。 根据上述假设,可知该关系模式具有如下的函数依赖: (学生,课程)→教师,(学生,教师)→课程,教师→课程。 该关系模式的候选键为(学生,课程),(学生,教师)。因为该关系模式所有属性都是主属性,所以S-T-J满足3NF,但不满足BCNF,因为教师属性是课程决定因素,但教师属性是单一属性,不是键。 ;不属于BCNF的关系模式存在数据冗余,比如有40个学生选定某一门课程,则教师与该课程的关系就会重复存储40次。可以将3NF分解为BCNF的关系模式,以消除数据冗余。将3NF分解为BCNF的关系模式的方法: (1)在3NF关系模式中去掉一些主属性,只保留主键,使该关系模式只有唯一候选键; (2)把去掉的主属性分别同各自的非主属性组成新的关系模式; (3)检查分解结果,如果仍有不满足BCNF,则按前两步骤继续分解。 按此方法,将S-T-J关系模式分解为满足BCNF的两个关系模式:S-T(学生,教师),T-J(教师,课程)。 ;MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。MySQL 是一个真正的多用户、多线程SQL数据库服务器。 MySQL是一个客户机/服务器结构的实现,它由一个服务器守护程序mysqld和许多不同的客户程序以及库组成的。 MySQL 最流行的关系型数据库管理系统,在 WEB 应用方面MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。 MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。 MySQL 软件采用了双授权政策,它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,使得MySQL被广泛地应用在Internet上的大中小型网站网中作为网站数据库,例如像Face

文档评论(0)

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

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

1亿VIP精品文档

相关文档