chapter2 关模型和关系运算理论.pptVIP

  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文档。上传文档
查看更多
chapter2 关模型和关系运算理论.ppt

第2章 关系模型和关系运算理论 本章概要 本章先介绍关系模型的基本概念;然后介绍关系运算的理论基础:关系代数。 关系模型和关系运算理 2.1 关系模型的基本概念 2.2 关系代数 2.4 关系代数表达式的优化 2.1 关系模型的基本概念 2.1.1 基本术语 2.1.2 关系的定义和性质 2.1.3 关系模型的三类完整性规则 2.1.4 关系模型的三级体系结构 2.1.5 关系模型的形式定义和优点 2.1.6 关系查询语言和关系运算 2.1.1 基本术语(1) 定义2.1 用二维表格表示实体集,用关键码进行数据导航的数据模型称为关系模型(Relational Model)。 2.1.1 基本术语(2) 关系R元数为5,基数为4 2.1.1 基本术语(3) 在关系模型中 字段-----属性,字段值-----属性值 记录类型-----关系模式 记录-----元组(tuple) 元组的集合-----关系(relation)或实例(instance) 关系中属性个数称为元数(arity),元组个数为基数(cardinality)。 一般用大写字母A、B、C、… 表示单个属性,用大写字母 …、X、Y、Z表示属性集,用小写字母表示属性值,有时也习惯称呼关系为表或表格,元组为行(row),属性为列(column)。 2.1.1 基本术语(4) 关键码(key,简称键)由一个或多个属性组成。在实际使用中,有下列几种键。 (1)超键(super Key) (2)候选键(candidate Key) (3)主键(primary Key) 在图2.1中,(工号,姓名)是模式的一个超键,但不是候选键,而(工号)是候选键。在实际使用中,如果选择(工号)作为删除或查找元组的标志,那么称(工号)是主键。 (4)外键(foreign Key) 2.1.2 关系的定义和性质 定义2.2 关系是一个属性相同的元组的集合。 在关系模型中,对关系作了下列规范性限制: 关系中每一个属性值都是不可分解的; 关系中不允许出现重复元组(即不允许出现相同的元组); 由于关系是一个集合,因此不考虑元组间的顺序,即没有行序; 元组中的属性在理论上也是无序的,但使用时按习惯考虑列的顺序。 2.1.3 关系模型的三类完整性规则 关系的约束条件 实体完整性 参照完整性 用户自定义完整性 2.1.3 关系模型的三类完整性规则(1) 实体完整性规则(entity integrity rule) 要求关系中元组在组成主键的属性上不能有空值。 如果出现空值,那么主键值就起不了唯一标识元组的作用,即存在不可标识的实体。 2.1.3 关系模型的三类完整性规则(2) 参照完整性规则(reference integrity rule) 定义2.3 参照完整性规则的形式定义如下: 如果属性集K是关系模式R1的主键,K也是关系模式R2的外键,那么在R2的关系中,K的取值只允许两种可能,或者为空值,或者等于R1关系中某个主键值。 这条规则的实质是“不允许引用不存在的实体”。 2.1.3 关系模型的三类完整性规则(3) 例2.1 下面各种情况说明了参照完整性规则在关系中如何实现的。 ① 在关系数据库中有下列两个关系模式: S(S#,SNAME,AGE,SEX) SC(S#,C#,SCORE) 这里带下划线者为主键,带波浪线者为外键。据规则要求关系SC中的S# 值应该在关系S中出现。如果关系SC中有一个元组(S7,C4,80),而学号S7却在关系S中找不到,那么我们就认为在关系SC中引用了一个不存在的学生实体,这就违反了参照完整性规则。 另外,在关系SC中S# 不仅是外键,也是主键的一部分,因此这里S# 值不允许空。 2.1.3 关系模型的三类完整性规则(4) ② 设工厂数据库中有两个关系模式: DEPT(D#,DNAME) EMP(E#,ENAME,SALARY,D# ) 车间模式DEPT的属性为车间编号、车间名,职工模式EMP的属性为工号、姓名、工资、所在车间的编号。每个模式的主键与外键已标出。在EMP中,由于D# 不在主键中,因此D# 值允许空。 2.1.3 关系模型的三类完整性规则(5) ③ 设课程之间有先修、后继联系。模式如下: R(C# ,CNAME,PC# ) 其属性表示课程号、课程名、先修课的课程号。如果规定,每门课程的直接先修课只有一门,那么模式R的主键是C#,外键是PC#。这里参照完整性在一个模式中实现。即每门课程的直接先修课必须在关系中出现。 2.1.3 关系模型的三类完整性规则(6) 用户定义的完整性规则 在建立关

文档评论(0)

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

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

1亿VIP精品文档

相关文档