关系数据库与SQLServer2008第2版教学课件作者龚小勇第3讲关系数据库原理(关系的完整性和规范化)课件.docVIP

关系数据库与SQLServer2008第2版教学课件作者龚小勇第3讲关系数据库原理(关系的完整性和规范化)课件.doc

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
重庆电子工程职业学院授课方案(教案) 课名: 教师: 班级: 编写时间: 课题:关系的完整性和规范化 教学目的及要求: 1.理解关系的完整性 2.了解函数依赖;理解关系规范化的含义、三种范式的定义 3.能进行范式的判别和分解 教学重点: 1.关系的完整性 2.范式类别的判别、范式的分解 教学难点: 范式类别的判别、范式的分解 教学步骤及内容: 复习并导入新课 1.什么是主关键字/主码/主键? 2.ER图转化为关系模式的原则是什么? 一、关系的完整性规则 定义:是对关系的某种约束条件。 目的:用于保证数据库中数据的正确性、一致性、有效性。 类型: 实体完整性规则 参照完整性规则(引用完整性规则) 域完整性规则(用户自定义完整性规则) 1.实体完整性规则 规则要求:在任何关系的任何一个元组中,主键的值不能为空值、也不能取重复的值。 目的:用于保证数据库表中的每一个元组都是存在且唯一的。 例如:学生(学号,姓名,性别,年龄)中,学号是主键,其值必须非空,且不能重复。 2.参照完整性规则(引用完整性规则) 规则要求:“不引用不存在的实体”。即:不允许在一个关系中引用另一个关系中不存在的元组。 例如: 主表:学生(学号,姓名,性别,专业号,年龄) 从表:专业(专业号,专业名) 主表的“专业号(外键)”的取值只能为两种情况: (1)若取非空值,则它必须是从表中存在的值。 (2)取空值(null)。表明尚未给学生分配专业。null不等于0或空字符串。 目的:用于确保相关联的表间的数据保持一致。 3.域完整性规则(用户定义完整性规则) 规则要求:由用户根据实际情况,定义表中属性的取值范围。 例如:性别只能是男和女、年龄不能为负值、成绩在0—100之间等。 目的:用于保证给定字段中数据的有效性,即保证数据的取值在有效的范围内。 二、关系的规范化 在数据库的设计过程中,对于同一个问题,选用不同的关系模式,其性能的优劣是大不相同的,为了区分关系模式的优劣,人们常常把关系模式分为各种不同等级的范式。 1.概念、类型 范式的类型:第一范式(1NF)、第二范式(2NF)、第三范式(3NF)…… 关系规范化的概念:将低级范式转换为若干个高级范式过程。 2.第一范式(1NF) 定义:如果关系模式R的每个属性都是不可分解的,则称R属于1NF。第一范式是对关系的最低要求。 示例: 3.第二范式(2NF) 定义:如果关系模式R为第一范式,且R中每个非主属性完全函数依赖于R的主码,则称R属于2NF模式。 示例:下列关系模式不是第二范式。 SCD(学号,姓名,课程号,成绩,系名,系主任) 主码为复合码:学号+课程号 其中,姓名、系名、系主任部分函数依赖主码(只依赖于课程号) 解决方法:消除部分函数依赖。 分解为2NF的方法: 把关系模式中对码完全函数依赖的非主属性与决定它们的码放在一个关系模式中。 把对码部分函数依赖的非主属性和决定它们的主属性放在一个关系模式中。 检查分解后的新模式,如果仍不是2NF,则继续按照前面的方法进行分解,直到达到要求。 关系模式SCD的分解结果如下: SC(学号,课程号,成绩) SD(学号,姓名,系名,系主任) 4.第三范式(3NF) 定义:如果关系模式R为第二范式,且R中每个非主属性都不传递函数依赖于R的主码,则称R属于3NF。 示例:下列关系模式不是第三范式。 SD(学号,姓名,系名,系主任) 因为:学号→系名,系名→系主任,存在传递依赖关系。 解决方法:消除传递函数依赖。 分解为3NF的方法: 把直接对主码函数依赖的非主属性与决定它们的主码放在一个关系模式中。 把造成传递函数依赖的决定因素连同被它们决定的属性放在一个关系模式中。 检查分解后的新模式,如果不是3NF,则继续按照前面的方法进行分解,直到达到要求。 关系模式SD的分解结果如下: SD(学号,姓名,系名) SD(系名,系主任) [课程练习]:假设某商业集团数据库中有1个关系模式R(商店编号,商品编号,数量,部门编号,负责人)。如果规定:(1)每个商店的每种商品只在一个部门销售。(2)每个商店的每个部门只有一个负责人。 (3)每个商店的每种商品只有一个库存数量。要求: 1.写出关系模式R的基本函数依赖集 2.找出关系模式R的候选码。 3.关系模式R最高已经达到第几范式?为什么? 4.如果R不属于3NF,请将R分解成3NF。 [分析与解答]: 1.基本的函数依赖有: (商店编号+商品编号) → 部门编号 (商店编号+部门编号) → 负责人 (商店编号+商品编号) → 数量 2.由题意,上面的函数依赖可知“商店编号

文档评论(0)

开心农场 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档