第 2 章 数据模型与概念模型
DESCRIPTION
第 2 章 数据模型与概念模型. ● 2.1 信息的三种世界及其描述 ● 2.2 概念模型及其表示 ● 2.2.1 概念模型的基本概念 ● 2.2.2 概念模型的表示方法 ● 2.3 常见的三种数据模型 ● 2.3.1 数据模型概述 ● 2.3.2 层次模型及特点 ● 2.3.3 网状模型及特点 ● 2.3.4 关系模型概述. ● 2.1 信息的三种世界及其描述 1. 信息的现实世界 - PowerPoint PPT PresentationTRANSCRIPT
第第 22 章章 数据模型与概念模型数据模型与概念模型
●● 2.1 2.1 信息的三种世界及其描述信息的三种世界及其描述●● 2.2 2.2 概念模型及其表示概念模型及其表示 ● ● 2.2.1 2.2.1 概念模型的基本概念概念模型的基本概念 ● ● 2.2.2 2.2.2 概念模型的表示方法概念模型的表示方法
●● 2.3 2.3 常见的三种数据模型常见的三种数据模型 ● ● 2.3.1 2.3.1 数据模型概述数据模型概述 ● ● 2.3.2 2.3.2 层次模型及特点层次模型及特点 ● ● 2.3.3 2.3.3 网状模型及特点网状模型及特点 ● ● 2.3.4 2.3.4 关系模型概述关系模型概述
●● 2.1 2.1 信息的三种世界及其描述信息的三种世界及其描述
1. 1. 信息的现实世界信息的现实世界
信息的现实世界是指我们要管理的客观存在的各种事物、事务信息的现实世界是指我们要管理的客观存在的各种事物、事务
之间的相互联系及事物的发生、变化过程 之间的相互联系及事物的发生、变化过程
1) 实体 (Entity) :现实世界中存在的可以相互区分的事物或概念称为实体。
2) 实体的特征 (Entity Characteristic) :每个实体都有自己的特征,利用实体的特征可以区别不同的实体。
3) 实体集 (Entity Set) 及实体集间的联系 (Relation) :具有相同特征或能用同样特征描述的实体的集合称为实体集。
3. 3. 信息的计算机世界信息的计算机世界
2. 2. 信息世界信息世界
在信息世界中:现实世界事物反映到人头脑中,经过认识、选择、在信息世界中:现实世界事物反映到人头脑中,经过认识、选择、
命名和分类等综合分析形成的印象和概念,并进行的描述。命名和分类等综合分析形成的印象和概念,并进行的描述。
实体的特征在头脑中形成的知识称为属性;实体通过其属性表实体的特征在头脑中形成的知识称为属性;实体通过其属性表
示称为实例;同类实例的集合称为对象,对象即实体集中的实体用示称为实例;同类实例的集合称为对象,对象即实体集中的实体用
属性表示得出的信息集合;实体集之间的联系用对象联系表示。属性表示得出的信息集合;实体集之间的联系用对象联系表示。
信息世界通过概念模型(也称信息模型)、过程模型和状态模信息世界通过概念模型(也称信息模型)、过程模型和状态模
型反映现实世界,它要求对现实世界中的事物、事物间的联系和事型反映现实世界,它要求对现实世界中的事物、事物间的联系和事
物的变化情况准确、如实、全面地表示。物的变化情况准确、如实、全面地表示。
1)1) 数据项数据项 (Item)(Item) :数据项是对象属性的数据表示。:数据项是对象属性的数据表示。
2) 2) 记录记录 (Record)(Record) :记录是实例的数据表示。:记录是实例的数据表示。
3) 3) 文件文件 (File)(File) :文件是对象的数据表示,是同类记录的集合。:文件是对象的数据表示,是同类记录的集合。
4) 4) 数据模型(数据模型( Data ModelData Model ):现实世界中的事物和相互联系数据):现实世界中的事物和相互联系数据
化的结果就是数据模型。化的结果就是数据模型。
4. 4. 现实世界、信息世界和计算机世界的关系现实世界、信息世界和计算机世界的关系
●● 2.2 2.2 概念模型及其表示概念模型及其表示
(1) 对象( Object )和实例( Instance ) 对象也称为实体型。现实世界中,具有相同性质、服从相同规则的一类事物(概念)的抽象称为对象,对象是实体集数据化的结果。对象中的每一个具体的事物(实体)为该对象的实例。
● ● 2.2.1 2.2.1 概念模型的基本概念概念模型的基本概念
1. 概念模型涉及的基本概念 ement )及内容
(2) 属性( Attribute )属性为实体的某一方面特征的抽象表示。(3) 主码( Primary Key )和次码 (Secondary Key)
码也称关键字,它能够惟一标识一个实体;实体集中不能惟一标识实体属性的叫次码。(4) 域( Domain )属性的取值范围称为属性的域。
2. 2. 实体联系的类型 实体联系的类型
(1) (1) 两个实体集之间的联系两个实体集之间的联系
1) 1) 一对一联系(一对一联系( 1:11:1 ) )
2) 2) 一对多联系(一对多联系( 1:n1:n ) )
3) 3) 多对多联系(多对多联系( m:nm:n ))
(2) (2) 多实体集之间的联系多实体集之间的联系
1) 1) 多实体集之间的一对多联系 多实体集之间的一对多联系
2) 2) 多实体集之间的多对多联系 多实体集之间的多对多联系
(3) (3) 实体集内部的联系 实体集内部的联系
1) 1) 用长方形表示实体集,长方形内写明实体集名。用长方形表示实体集,长方形内写明实体集名。
2) 2) 用椭圆形表示实体集的属性,并用线段将其与相应的实体集连用椭圆形表示实体集的属性,并用线段将其与相应的实体集连
接起来。接起来。
3) 3) 用菱形表示实体集间的联系,菱形内写上联系名,并用线段分用菱形表示实体集间的联系,菱形内写上联系名,并用线段分
别与有关实体集连接起来,在线段旁标出联系的类型 别与有关实体集连接起来,在线段旁标出联系的类型
● ● 2.2.2 2.2.2 概念模型的表示方法概念模型的表示方法
课堂练习: P42 5
●● 2.3 2.3 常见的三种数据模型常见的三种数据模型 ● ● 2.3.1 2.3.1 数据模型概述数据模型概述
数据模型具有数据结构、数据操作和完整性约束条件三要素。数据模型具有数据结构、数据操作和完整性约束条件三要素。
1. 1. 数据模型的三要素数据模型的三要素
1) 1) 数据结构:所研究的对象类型(数据结构:所研究的对象类型( Object TypeObject Type )的集合。)的集合。
包括:与数据类型、内容、性质有关的对象;与数据之间联系有关包括:与数据类型、内容、性质有关的对象;与数据之间联系有关
的对象。的对象。
2) 2) 数据操作:对数据库中各种数据对象允许执行的操作集合。数据操作:对数据库中各种数据对象允许执行的操作集合。
包括操作对象和有关的操作规则两部分。包括操作对象和有关的操作规则两部分。
3) 3) 数据约束条件:一组数据完整性规则的集合。数据约束条件:一组数据完整性规则的集合。
2. 2. 常见的数据模型常见的数据模型
层次模型(层次模型( Hierarchical ModelHierarchical Model )、网状模型()、网状模型( Network ModelNetwork Model ))
和关系模型(和关系模型( Relational ModelRelational Model ))
3 3 层次模型中多对多联系的表示层次模型中多对多联系的表示 必须进行转换必须进行转换
(( 11 )冗余结点法)冗余结点法
(( 22 )虚拟结点法。)虚拟结点法。
4.4. 层次模型的存储结构层次模型的存储结构
(1)(1) 邻接存储法邻接存储法
(2)(2) 链接链接存储法存储法
● ● 2.3.2 2.3.2 层次模型及特点层次模型及特点
1. 1. 层次模型的数据结构层次模型的数据结构
(1) (1) 层次模型的定义层次模型的定义
1) 1) 有且仅有一个结点没有双亲结点,这个结点称为根结点。有且仅有一个结点没有双亲结点,这个结点称为根结点。
2) 2) 除根结点之外的其他结点有且只有一个双亲结点。除根结点之外的其他结点有且只有一个双亲结点。
(2) (2) 层次模型的数据表示方法层次模型的数据表示方法
实体集使用记录表示;记录型包含若干个字段;记录值表示实体集使用记录表示;记录型包含若干个字段;记录值表示
实体;记录之间的联系使用基本层次联系表示。实体;记录之间的联系使用基本层次联系表示。
(3) (3) 层次模型的特点 层次模型的特点
层次模型像一棵倒立的树,只有一个根结点,有若干个叶结层次模型像一棵倒立的树,只有一个根结点,有若干个叶结
点,结点的双亲是惟一的点,结点的双亲是惟一的 . . 例如: 例如:
教学院系数据对应的一个实例: 教学院系数据对应的一个实例:
2. 2. 层次模型的数据操作和完整性约束条件层次模型的数据操作和完整性约束条件
1) 1) 在进行插入记录值操作时,如果没有指明相应的双亲记录值在进行插入记录值操作时,如果没有指明相应的双亲记录值
(首记录值),则不能插入子女记录值(属记录值)。(首记录值),则不能插入子女记录值(属记录值)。
2) 2) 进行删除记录操作时,如果删除双亲记录值(首记录值),进行删除记录操作时,如果删除双亲记录值(首记录值),
则相应的子女结点值(属记录值)也同时被删除。则相应的子女结点值(属记录值)也同时被删除。
3) 3) 进行修改记录操作时,应修改所有相应记录,以保证数据的进行修改记录操作时,应修改所有相应记录,以保证数据的
一致性。 一致性。
● ● 2.3.3 2.3.3 网状模型及特点 网状模型及特点 1. 1. 网状模型的数据结构网状模型的数据结构
(1) (1) 网状模型结构的基本特征网状模型结构的基本特征
1) 1) 有一个以上的结点没有双亲。有一个以上的结点没有双亲。
2) 2) 结点可以有多于一个的双亲。结点可以有多于一个的双亲。
(2) (2) 网状模型的数据表示方法网状模型的数据表示方法
1) 1) 使用记录和记录值表示实体集和实体;使用记录和记录值表示实体集和实体;
2)2) 联系联系 (( 系系 )) 用结点间的有向线段表示。用结点间的有向线段表示。
2. 2. 网状模型的完整性约束条件网状模型的完整性约束条件
1) 1) 支持记录码的概念。码即惟一标识记录的数据项的集合。支持记录码的概念。码即惟一标识记录的数据项的集合。
2) 2) 保证一个联系中双亲记录和子女记录之间是一对多的联系。保证一个联系中双亲记录和子女记录之间是一对多的联系。
3) 3) 可以支持双亲记录和子女记录之间某些约束条件。可以支持双亲记录和子女记录之间某些约束条件。
1. 1. 关系模型的数据结构关系模型的数据结构
(1) (1) 关系模型中的主要术语关系模型中的主要术语
1) 1) 关系(关系( RelationRelation )。一个关系对应通常所说的一张二维表,如)。一个关系对应通常所说的一张二维表,如
表表 2-22-2 。。
2) 2) 元组(元组( TupleTuple )。表中的一行称为一个元组。)。表中的一行称为一个元组。
3) 3) 属性(属性( AttributeAttribute )。表中的一列称为一个属性。)。表中的一列称为一个属性。
4) 4) 主码(主码( Primary KeyPrimary Key )。表中的某个属性或属性组,它们的值)。表中的某个属性或属性组,它们的值
可以惟一可以惟一
地确定一个元组,且属性组中不含多余的属性,这样的属性或属性地确定一个元组,且属性组中不含多余的属性,这样的属性或属性组称为关系的码。组称为关系的码。
5) 5) 域(域( DomainDomain )。属性的取值范围称为域。)。属性的取值范围称为域。
6) 6) 分量(分量( elementelement )。元组中的一个属性值称为分量。)。元组中的一个属性值称为分量。
● ● 2.3.4 2.3.4 关系模型概述关系模型概述
7) 7) 关系模式(关系模式( Relation modeRelation mode )。关系的型称为关系模式,关系)。关系的型称为关系模式,关系
模式是对关系的描述。模式是对关系的描述。
关系模式一般的表示是:关系名关系模式一般的表示是:关系名 (( 属性属性 11 ,属性,属性 22 ,…,属性,…,属性 n).n).
(2) (2) 关系模型中的数据全部用关系表示关系模型中的数据全部用关系表示
例如,关系模型中,学生、课程、学生与课程之间的联系表示为:例如,关系模型中,学生、课程、学生与课程之间的联系表示为:
学生学生 (( 学号,姓名,性别,年龄,所在系学号,姓名,性别,年龄,所在系 )) ;;
课程课程 (( 课程号,课程名,先行课课程号,课程名,先行课 )) ;;
选修选修 (( 学号,课程号,成绩学号,课程号,成绩 ).).
2. 2. 关系操作和关系的完整性约束条件关系操作和关系的完整性约束条件
关系操作主要包括数据查询和插入、删除、修改数据。关系操作主要包括数据查询和插入、删除、修改数据。
关系中的数据操作是集合操作。关系中的数据操作是集合操作。
关系操作语言都是高度非过程的语言关系操作语言都是高度非过程的语言
关系的完整性约束条件包括三类:实体完整性、参照完整性关系的完整性约束条件包括三类:实体完整性、参照完整性
和用户定义的完整性。和用户定义的完整性。
3. 3. 关系模型与非关系模型比较关系模型与非关系模型比较
1) 1) 关系数据模型建立在严格的数学基础之上。关系数据模型建立在严格的数学基础之上。
2) 2) 关系数据模型的概念单一,容易理解。关系数据模型的概念单一,容易理解。
3) 3) 关系数据模型的存取路径对用户隐蔽。关系数据模型的存取路径对用户隐蔽。
4) 4) 关系模型中的数据联系是靠数据冗余实现的。关系模型中的数据联系是靠数据冗余实现的。
作业• P34
• 1 、 4 、 6 、 7