第2章 数据模型与概念模型-修改.ppt_第1页
第2章 数据模型与概念模型-修改.ppt_第2页
第2章 数据模型与概念模型-修改.ppt_第3页
第2章 数据模型与概念模型-修改.ppt_第4页
第2章 数据模型与概念模型-修改.ppt_第5页
已阅读5页,还剩43页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第2章 概念模型与数据模型,2.1 信息的三种世界及其描述 2.2 概念模型 2.3 数据模型,2.1 信息的三种世界及其描述,1. 现实世界 要管理的客观存在的各种事物、事务之间的相互 联系及事物的发生、变化过程。 (1)实体(Entity) 现实世界中存在的可以相互区分的事物或概念。(2) 实体的特征(Entity Characteristic) 每个实体都有自己的特征,利用实体的特征可以 区别不同的实体。(3) 实体集及实体集间的联系(Relation) 具有相同特征或能用同样特征描述的实体的集合。,2. 信息世界,在信息世界中:实体通过其属性表示称为实例(习惯也称实体);同类实例的集合

2、也称为对象(习惯称实体集),实体的特征在头脑中形成的知识称为属性;对象即实体集中的实体用属性表示得出的信息集合;实体集之间的联系用对象联系表示。,信息世界通过概念模型、过程模型和状态模型反映现实世界,概念模型 通过E-R图中的实体集、属性和联系给出对现实世界的静态描述。 过程模型 通过流程图和数据字典描述处理加工过程。 状态模型 通过状态图给出动态描述,3. 计算机世界,数据模型(Data Model):现实世界中的事物和相互联系数据化的结果就是数据模型。 1) 数据项(Item):对象属性的数据表示。2) 记录(Record):实例的数据表示。记录有型和值之分:记录的型是结构,由数据项的型构

3、成;记录的值表示对象中的一个实例,它的分量是数据项值。3) 文件(File):对象的数据表示,同类记录的集合。,4. 现实世界、信息世界和计算机 世界的关系,信息的三种世界术语的对应关系表,现实世界、信息世界和计算机世界的关系,信息的三个世界的联系和转换过程,现实世界 知识加工 信息世界 数据库设计 计算机世界 事物及联系 概念模型 数据化 数据模型,2.2 概念模型,2.2.1 概念模型的基本概念 实体与实体集(Entity Set) 同一类型实体的集合称为实体集。 属性(Attribute) 属性为实体的某一方面特征的抽象表示。 码、主码(Primary Key)和候选码 码能够惟一标识一

4、个实体;,域(Domain) 属性的取值范围称为属性的域。 联系(Relationship) 现实世界中事物内部以及事物之间的联系在信息世界中反映为实体内部的联系和实体之间的联系。,实体集联系的类型,两个实体集之间的联系 1) 一对一联系(1:1):设有两个实体集A和B,对于A中的每一个实体, B中至多有一个实体与之联系;反之亦然。 示例:班级 班长,两个实体集之间的联系(续),2) 一对多联系(1:n):设有两个实体集A和B,对于A的每一个实体,B中有一个或多个实体与之联系;而对于B的每一个实体,A中至多有一个实体与之联系。 示例: 班级 学生,两个实体集之间的联系(续),3) 多对多联系(

5、m:n):设有两个实体集A和B,对于A的每一个实体,B中有一个或多个实体与之联系;反之亦然。 示例: 课程 学生,两个实体集之间的联系示例,(2) 多实体集之间的联系,1)多实体集之间的一对多联系。 2) 多实体集之间的多对多联系。,单个实体集内的联系,一对多联系 示例 职工 实体集 一对一联系 示例: 家庭,2.2.2 概念模型的表示方法,E-R 图(Entity-Relationship)实体-联系图 1) 用长方形表示实体集,长方形内写明实体集名。 2) 用椭圆形表示实体集的属性。 3) 用菱形表示实体集间的联系。,E-R图(Entity-Relationship),联系的属性,联系本身

6、也是一种实体型,也可以有属性。如果一个联系具有属性,则这些属性也要用无向线与该联系连接起来 。,示例分析1,用E-R图表示学生借书管理的概念模型 实体及属性 联系的类型及属性,示例分析2,用E-R图表示某个工厂物资管理的概念模型 实体集及属性 仓库: 仓库号、面积、电话号码 零件 :零件号、名称、规格、单价、描述 供应商:供应商号、名称、地址、电话号码、帐号 管理员:职工号、姓名、年龄,示例2(续),管理制度如下: (1)一个仓库可以存放多种零件,一种零件可以存放在多个仓库中。 (2)一个仓库有多个仓库管理员,一个管理员只能在一个仓库工作。 (3)供应商供应多种零件;一个零件也由多个供应商提供

7、。,2.3 常见的数据模型,2.3.1 数据模型概述 数据模型的三要素 1) 数据结构:所研究的对象类型的集合。 2) 数据操作:对数据库中各种数据对象允许执 行的操作集合。 3) 数据约束条件:一组数据完整性规则的集合。,常见的数据模型,层次模型、网状模型、关系模型 在非关系模型中,实体集用记录表示,实体的属性对应记录的数据项(或字段)。实体集之间的联系转换成两两记录之间的联系。非关系模型中数据结构的单位是基本层次联系。 右图 Ri位于联系Lij的始结点,称为双亲结点; Rj位于联系的终结点,称为子女结点,基本层次联系,2.3.2 层次数据模型,层次模型的定义 1) 有且仅有一个结点没有双亲

8、结点,这个结点称为根结点。 2) 除根结点之外的其他结点有且只有一个双亲结点。,层次模型的数据表示方法 实体集使用记录表示;记录型包含若干个字段;记录值表示实体;记录之间的联系使用基本层次联系表示。 层次模型的特点 层次模型像一棵倒立的树,只有一个根结点,有若干个叶结点,结点的双亲是惟一的。,层次模型示例,院系层次模型的数据结构,院系,教研室,学生,教师,2. 层次模型的完整性约束条件,(1) 在进行插入记录值操作时,如果没有指明相应的双亲记录值(首记录值),则不能插入子女记录值(属记录值)。 (2) 进行删除记录操作时,如果删除双亲记录值(首记录值),则相应的子女结点值(属记录值)也同时被删

9、除。 (3) 进行修改记录操作时,应修改所有相应记录,以保证数据的一致性。,层次模型的优缺点,优点 层次模型的数据结构比较简单清晰 查询效率高,性能优于关系模型,不低于网状模型 层次数据模型提供了良好的完整性支持 缺点 多对多联系表示不自然 对插入和删除操作的限制多,应用程序的编写比较复杂 查询子女结点必须通过双亲结点 由于结构严密,层次命令趋于程序化,2.3.3 网状数据模型,(1) 网状模型结构的基本特征 1) 有一个以上的结点没有双亲。 2) 结点可以有多于一个的双亲。 (2) 网状模型的数据表示方法 1) 使用记录和记录值表示实体集和实体;每个结点表示一个记录,每个记录包含若干个字段。

10、 2) 联系(系)用结点间的有向线段表示。每个有向线段表示一个记录间的一对多的联系。,L1 L2 L1 L2 L1 L2 L3,网状模型的例子,2. 网状模型的完整性约束条件,1)支持记录码的概念。码即惟一标识记录的数据项的集合。 2) 保证一个联系中双亲记录和子女记录之间是一对多的联系。 3) 可以支持双亲记录和子女记录之间某些约束条件。,网状数据模型的优缺点,优点 能够更为直接地描述现实世界,如一个结点可以有多个双亲 具有良好的性能,存取效率较高 缺点 结构比较复杂,而且随着应用环境的扩大,数据库的结构就变得越来越复杂,不利于最终用户掌握 DDL、DML语言复杂,用户不容易使用,2.3.4

11、 关系数据模型 1. 关系模型的数据结构,关系模型中数据的逻辑结构是二维表,它由行和列组成。,1) 关系。一个关系对应通常所说的一张二维表。 2) 元组。表中的一行称为一个元组。 3) 属性。表中的一列称为一个属性。 4) 码。表中的某个属性或属性组,属性值可以惟一地确定一个元组,且属性组中不含多余的属性。 5) 域。属性的取值范围称为域。 6) 分量。元组中的一个属性值称为分量。 7) 关系模式。关系的型称为关系模式,是对关系的描述。,关系模型中的主要术语,(2) 关系模型中的数据全部用关系表示,关系模式一般的表示是: 关系名(属性1,属性2,属性n).,学生(学号,姓名,性别,年龄,所在系

12、),学生学籍表示例,学生(学号,姓名,性别,年龄,所在系),关系数据模型的数据结构(续),最基本的规范条件:关系的每一个分量必须是一个不可分的数据项, 不允许表中还有表,2. 关系操作和完整性约束条件,3. 关系模型与非关系模型比较1) 关系数据模型建立在严格的数学基础之上。2) 关系数据模型的概念单一,容易理解。3) 关系数据模型的存取路径对用户隐蔽。4) 关系模型中的数据联系是靠数据冗余实现的。,关系操作主要包括数据查询和插入、删除、修改数据。 关系中的数据操作是集合操作。 关系操作语言都是高度非过程的语言 关系的完整性约束条件包括三类:实体完整性、参照完整性和用户定义的完整性。,关系数据

13、模型的优缺点,优点 建立在严格的数学概念的基础上 概念单一,简单明了 关系模型的存取路径对用户透明,关系数据模型的优缺点(续),缺点 存取路径对用户透明导致查询效率往往不如非 关系数据模型 为提高性能,必须对用户的查询请求进行优化 增加了开发DBMS的难度,概念模型向关系数据模型的转换,概念模型 关系模型,学生(学号,姓名,年龄,性别, 系号,年级) 课程(课程号,课程名,学分) 选修(学号,课程号,成绩),NoSQL 非关系型的数据库,NoSQL ( NoSQL = Not Only SQL ) High performance Huge Storage High Scalability & High Availability,2.3.5 面向对象数据模型,对象与对象标识 封装 类 类层次 消息,2.3.6 对象关系数据模型,1. 对象关系数据模型的概念 对象关系数据模型使用二维表表示数据,它包括关系表和对象表两种。关系表属于关系模型,关系的属性对应于表的列,关系的元组对应于表的行,关系模型不支持方法。对象表属于面向对象数据模型,支持面向对象的基本功能,对象的类抽象对应二维表,类的实例(对象)对应于表中的行,类的属性对应于表的列,通过对象可调用方法。,. 对象表的数据类型和表结构特点,(1)对象表的属性支持复合数据类型 关系表强调属性数据只能是不可分割的简单数据项,复合数

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论