数据库系统概论 05届课件第3篇.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第三章 关系模型和关系运算 理解:关系模型的基本概念。 熟练掌握:ODL设计转换为关系设计。 熟练掌握:E/R图设计转换为关系设计。 熟练掌握:用关系代数表达式表达查询要求。 基本掌握:用关系演算表达式表达查询要求。 基本掌握:用关系逻辑表达式(数据逻辑规则)表达查询要求。 第三章 关系模型和关系运算 3.1 关系模型的基本概念 3.2 从ODL设计到关系设计 3.3 从E/R图到关系设计 3.4 关系代数 3.5 关系演算 3.6 关系逻辑 3.1 关系模型的基本概念 3.1 关系模型的基本概念 关系数据库系统 是支持关系模型的数据库系统 关系模型的组成 关系数据结构 关系操作集合 关系完整性约束 1. 关系数据结构 单一的数据结构----关系 现实世界的实体以及实体间的各种联系均用关系来表示 数据的逻辑结构----二维表 从用户角度,关系模型中数据的逻辑结构是一张二维表。 2. 关系操作集合 1) 常用的关系操作 2) 关系操作的特点 3) 关系数据语言的种类 4) 关系数据语言的特点 2. 关系操作集合 1) 常用的关系操作 查询 选择、投影、连接、除、并、交、差 数据更新 插入、删除、修改 查询的表达能力是其中最主要的部分 2) 关系操作的特点 集合操作方式,即操作的对象和结果都是集合。 2. 关系操作集合 3) 关系数据语言的种类 关系代数语言:用对关系的运算来表达查询要求 关系演算语言:用谓词来表达查询要求 具有关系代数和关系演算双重特点的语言 典型代表:SQL 2. 关系操作集合 4) 关系数据语言的特点 关系语言是一种高度非过程化的语言 存取路径的选择由DBMS的优化机制来完成 用户不必用循环结构就可以完成数据操作 能够嵌入高级语言中使用 关系代数、元组关系演算和域关系演算三种语言在表达能力上完全等价 关系模型中的几个概念 属性:关系的标题栏中各列的名字。属性描述了该列各数据项的含义 模式:关系的名称和关系的属性集称为关系的“模式” ,例如 Student ( StudentNo, StudentName, Age, Dept ) 元组:除了关系的标题栏以外,其他各行统称为“元组”。通常一个元组就表示一个对象,而元组所属的关系就表示对象所属的类。例如,(990011,李明,19,计算机系) 域:与关系的每个属性相关的特定基本类型 域(Domain) 域是一组具有相同数据类型的值的集合。例: 整数 实数 介于某个取值范围的整数 长度指定长度的字符串集合 {‘男’,‘女’} 介于某个取值范围的日期 第三章 关系模型和关系运算 3.1 关系模型的基本概念 3.2 从ODL设计到关系设计 3.3 从E/R图到关系设计 3.4 关系代数 3.5 关系演算 3.6 关系逻辑 3.2 从ODL设计到关系设计 将ODL设计转换为关系设计主要要把握三个方面的内容: 从ODL属性到关系属性; 将ODL中的联系转换为关系; 将ODL中的子类结构转换为关系。 3.2.1 从ODL属性到关系属性 若类的所有特性都是属性,而不是联系或者方法,并且属性都是原子类型。在这种情况下,对类建立对应的关系,类的每个属性对应于该关系的一个属性。 3.2.2 非原子属性的表示 如果ODL中的属性是复杂的数据类型,如结构、集合等,在转化为关系模型时,需要将其转化为原子类型。有几种不同的情况: (1) 组成结构的每个域本身都是原子类型的; (2) 如果属性是多个值的集合,要针对每个值建立一个元组; (3) 如果属性是定长的数组,可以在关系中用带有数组名和下标的属性来表示类中的数组类型的属性。 3.2.2 非原子属性的表示 interface Student { Attribute integer StudentNo; Attribute struct NameType { string First, string Last} StudentName; Attribute integer Age; Attribute string Dept; } 3.2.2 非原子属性的表示 interface Student { Attribute integer StudentNo; Attribute String StudentName; Attribute integer Age; Attribute Set string Dept; } 转化为如下关系模型:注意其中定长数组类型属性的转换 3.2.3 单值联系的表示 类的特性除了属性,一般还包含与其他ODL的联系,通过建立相关类中构成键码的属性集就可以表示相关类的对象,这个属性集的作用类似于指针。 3.2.3 单值联系的表示 例: int

文档评论(0)

kehan123 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档