第三节关系数据模型TheRelationalDataModel.pptVIP

第三节关系数据模型TheRelationalDataModel.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文档。上传文档
查看更多
第三章 关系数据模型 The Relational Data Model ODL、E/R到关系模型的转换 关系模型的设计理论 §3.1 关系模型的基本概念 逻辑数据模型 是用户从数据库所看到的数据模型 与DBMS有关 层次、网状、关系、面向对象 关系数据模型 数据结构 两维的扁平表 数据操作 关系代数 关系演算 数据的完整性 实体完整性 参照完整性 用户定义的完整性 现实世界的实体以及实体间的各种联系均用关系表示 关系数据库系统是建立在关系模型上的数据库系统 关系数据库是表的集合 模型和模式 数据模型是描述数据的手段 数据模式是用给定的数据模型对具体数据的描述 属性-二维表中的一列 元组-二维表中的一行 域 -属性的取值范围 型 值 联系 关系的联系是通过关联属性的值连接的 关系实例 关系 → 实体集、类 关系的实例 → 元组的集合 元组 → 实体、对象 数据库实例 → 给定时刻数据库中数据的一个快照 §3.5 函数依赖 数据依赖 函数依赖 多值依赖 数据依赖是针对数据模式,而不是特定的实例 函数依赖(FD) 属性之间的联系 假设给定 X 属性的值,就知道 Y的值,那么 X 函数决定 Y 如果R的两个元组在属性A1,A2,…,An上一致,则它们在另一个属性B上也一致,那么 A1,A2,…,An函数决定B,记作A1A2…An→B if A1A2…An→B1 then A1A2…An→B2 A1A2…An→ B1 B2 ... Bm …… A1A2…An→Bm 关系的键码 如果一个或多个属性的集合{A1A2…An}满足如下条件,则该集合为关系R的键码: 1.这些属性函数决定该关系的所有其他属性 2. {A1A2…An}的任何真子集都不能函数决定R的所有其他属性 超键码 包含键码的属性集称为超键码 寻找关系的键码(来自E/R) 来自实体集的关系的键码就是该实体集的键码属性 对于二元联系R: N:M,相关两个实体的键码都是R的键码属性 N:1,多端实体集的键码是R的加码属性 1:1,任意一端实体集的键码是R的键码 对于多向联系R: 如果多向联系R有一个箭头指向实体集E,则响应的关系中,除了E的键码以外,至少还存在一个键码。 寻找关系的键码(来自ODL) 来自ODL的关系的键码不一定就是该类的键码属性 对于单值联系R: 类C有一个指向类D的单值联系,C的关系中包含D的键码。C的键码仍是相应关系的键码 对于多值联系R: 被引用类的键码加入到引用类的键码组合称为键码 §3.6 函数依赖规则 分解规则 A1A2…An→ B1 B2 ... Bm 等价于 A1A2…An→ Bi 合并规则 A1A2…An→ Bi 等价于 A1A2…An→ B1 B2 ... Bm 平凡的函数依赖 如果对于函数依赖 A1A2…An→ B,B是A中的一个,则该函数依赖就是平凡的函数依赖 平凡依赖是永恒的 title,year → title 非平凡 如果B中至少有一个属性不在A中 title,year → year,length 完全非平凡 如果B中没有一个属性在A中 title,year → length 计算属性的闭包 闭包 F的闭包是指F逻辑蕴涵的所有函数依赖的集合,记作F+ 闭包的意义 检验给定的函数依赖是否蕴涵于某个函数依赖集S 从给定的函数依赖,可以推导出蕴涵的函数依赖 求闭包 例:对关系R(A,B,C,D,E,F),给定函数依赖AB→C,BC→AD,D→E,CF→B,求 {A,B}+ 关系的基与最小基 任何一个能从中导出关系的所有依赖的给定依赖集,称为该关系的一个基 如果一个基的任何真子集都不能推导出该关系的依赖全集,则称此基为最小基 求函数依赖的最小基 例:对关系R(A,B,C,D),有A→BC,B→C,A →B,AB →C,AC →D,求最小函数依赖集 §3.7 关系数据库模式设计 什么是好的数据库设计 体现客观世界的信息 无过度的冗余 无插入异常 无更新复杂 无删除异常 异常的原因 数据依赖的约束 解决方法 数据库设计的规范化→分解 范式(Normal Forms) 规范化 一个关系满足某个范式所规定的一系列条件时,它就属于该范式 可以用规范化要求来设计数据库 也可以用来验证设计结果的合理性,用其指导优化过程 1NF→2NF→3NF→BCNF→4NF 第一范式(1NF) 当且仅当一个关系R中,每一个元组的每一个属性只含有一个值时,该关系属于第一范式。 要求属性是原子的 第二范式(2NF) 对于关系R,若R∈1NF,且每一个非主属性完全函数依赖于码,则R∈2NF。 不能部分依赖于码 sc(sno,sname,cno,grade) sno,cno→grade sno→sname 第三范式(3NF) 对

文档评论(0)

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

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

1亿VIP精品文档

相关文档