第2章数据模型.ppt
《第2章数据模型.ppt》由会员分享,可在线阅读,更多相关《第2章数据模型.ppt(36页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第二章第二章 数据模型数据模型2.1 什么是数据模型什么是数据模型2.2 概念模型概念模型2.3 DBMS支持的数据模型支持的数据模型2.4 各种数据模型的总结各种数据模型的总结 数据模型是客观事物及其联系的数据描述,它应具有描述数据模型是客观事物及其联系的数据描述,它应具有描述数据和数据联系两方面的功能。组成数据模型的三要素是数据数据和数据联系两方面的功能。组成数据模型的三要素是数据结构、数据操作和数据的完整性约束条件。结构、数据操作和数据的完整性约束条件。数据模型可以形式化地表示为:数据模型可以形式化地表示为:DM=(R,L)其中,其中,DM(Data Model)是数据模型的英文简称;)
2、是数据模型的英文简称;R代代表记录型集合;表记录型集合;L代表不同记录型联系的集合。代表不同记录型联系的集合。例如,在学生选课问题中,例如,在学生选课问题中,R是学生和课程两个记录型的是学生和课程两个记录型的集合,集合,L是它们之间的联系,即为是它们之间的联系,即为“选修选修”联系。联系。2.1 什么是数据模型什么是数据模型数据模型在数据库中用数据模型这个工具来在数据库中用数据模型这个工具来抽象、表示抽象、表示和处理和处理现实世界中的数据和信息。现实世界中的数据和信息。通俗地讲数据模型就是现实世界的模拟。通俗地讲数据模型就是现实世界的模拟。数据模型应满足三方面要求数据模型应满足三方面要求能比较
3、能比较真实地真实地模拟现实世界模拟现实世界容易容易为人所理解为人所理解便于在便于在计算机上计算机上实现实现 不同的数据模型实际上是提供模型化数据和信息不同的数据模型实际上是提供模型化数据和信息的不同工具。根据模型应用的的不同工具。根据模型应用的不同目的不同目的,可以将,可以将这些模型划分为两类,它们分属于两个不同的层这些模型划分为两类,它们分属于两个不同的层次。次。第一类模型是第一类模型是概念模型概念模型,也称信息模型,也称信息模型,它是按用户的观点来对数据和信息建模,主要用它是按用户的观点来对数据和信息建模,主要用于数据库设计。于数据库设计。另一类模型是另一类模型是数据模型数据模型逻辑模型和
4、物理模逻辑模型和物理模型型,主要包括网状模型、层次模型、关系模型等,主要包括网状模型、层次模型、关系模型等,它是按计算机系统的观点对数据建模,主要用于它是按计算机系统的观点对数据建模,主要用于DBMS的实现。的实现。对数据的描述应指出在模型中包含哪些记录型,并对记对数据的描述应指出在模型中包含哪些记录型,并对记录型进行命名;指明各个记录型由哪些数据项构成,并对数录型进行命名;指明各个记录型由哪些数据项构成,并对数据项进行命名,每个数据项均需指明其数据类型和取值范围,据项进行命名,每个数据项均需指明其数据类型和取值范围,这是数据完整性约束所必需的。这是数据完整性约束所必需的。例如,在前面的学生选
5、课问题中,学生记录型例如,在前面的学生选课问题中,学生记录型S为(学号为(学号,姓名姓名,性别性别,班号),课程记录型班号),课程记录型C为(课程号为(课程号,课程名课程名,任课教任课教师)。如学号由长度为师)。如学号由长度为10的字符型数据构成,性别只能取的字符型数据构成,性别只能取“男男”或或“女女”。2.1.1 数据的描述数据的描述 对数据间联系的描述要指明各个不同记录型间所存在的对数据间联系的描述要指明各个不同记录型间所存在的联系和联系方式。联系和联系方式。数据模型中的数据模型中的“联系联系”是一种特殊类型记录,通常还要对是一种特殊类型记录,通常还要对这种这种“联系联系”进行命名。数据
6、库系统与文件系统本质不同就表进行命名。数据库系统与文件系统本质不同就表现在数据库中各个记录是互相联系的,正是通过这种联系,现在数据库中各个记录是互相联系的,正是通过这种联系,数据库才能支持访问不同类型记录的数据,并提高数据访问数据库才能支持访问不同类型记录的数据,并提高数据访问的效率的效率 例如,在前面的学生选课问题中,例如,在前面的学生选课问题中,“选修选修”联系将多个学联系将多个学生记录与多个课程记录关联起来,即多个学生可以选修同一生记录与多个课程记录关联起来,即多个学生可以选修同一门课程,一个学生也可以选修多门课程。门课程,一个学生也可以选修多门课程。2.1.2 数据间联系的描述数据间联
7、系的描述 计算机只能处理数据,所以首先要解决的问题是按用户计算机只能处理数据,所以首先要解决的问题是按用户的观点对数据和信息建模,然后按计算机系统的观点对数据的观点对数据和信息建模,然后按计算机系统的观点对数据建模。图建模。图2.1所示的是现实世界客观对象的抽象过程。所示的是现实世界客观对象的抽象过程。概念模型概念模型实际上是现实世界到机器世界的一个中间层实际上是现实世界到机器世界的一个中间层次。概念模型用于信息世界的建模,是现实世界的第一层次。概念模型用于信息世界的建模,是现实世界的第一层抽象,是数据库设计人员进行数据库设计的有力工具。抽象,是数据库设计人员进行数据库设计的有力工具。2.2
8、概念模型概念模型l实体(实体(Entity):客观存在并可相互区别的事物称为实客观存在并可相互区别的事物称为实体。体。l属性(属性(Attribute):实体所具有的某一特性称为属性。实体所具有的某一特性称为属性。l码(码(Key):码有时也称关键字。所谓码,是指在实体码有时也称关键字。所谓码,是指在实体属性中,可用于区别实体中不同个体的一个属性或几属性中,可用于区别实体中不同个体的一个属性或几个属性的组合,称为该实体集的个属性的组合,称为该实体集的“码码”。l域(域(Domain):属性的取值范围称为该属性的域。属性的取值范围称为该属性的域。l实体型(实体型(Entity Type):具有相
9、同属性的实体必然具有具有相同属性的实体必然具有共同的特征和性质。用实体名及其属性名集合来抽象共同的特征和性质。用实体名及其属性名集合来抽象和刻画同类实体,称为实体型。和刻画同类实体,称为实体型。l实体集(实体集(Entity Set):同型实体的集合称为实体集。同型实体的集合称为实体集。2.2.1 信息世界中的基本概念信息世界中的基本概念在现实世界中,事物内部以及事物之间是有联系的,这些联在现实世界中,事物内部以及事物之间是有联系的,这些联系在信息世界中反映为实体(型)内部的联系和实体(型)系在信息世界中反映为实体(型)内部的联系和实体(型)之间的联系。实体内部的联系通常是指组成实体的各属性之
10、之间的联系。实体内部的联系通常是指组成实体的各属性之间的联系。实体之间的联系通常是指不同实体集之间的联系。间的联系。实体之间的联系通常是指不同实体集之间的联系。两个实体集之间的联系可以分为以下两个实体集之间的联系可以分为以下3类:类:l一对一联系(简记为一对一联系(简记为1:1)l一对多联系(简记为一对多联系(简记为1:n)l多对多联系(简记为多对多联系(简记为m:n)2.2.2 实体间的联系方式实体间的联系方式1.1:1联系联系 如果对于实体集如果对于实体集A中的每一个实体,实体集中的每一个实体,实体集B中至多有一中至多有一个(也可以没有)实体与之联系,反之亦然,则称实体集个(也可以没有)实
11、体与之联系,反之亦然,则称实体集A与与实体集实体集B具有具有1:l联系。联系。例如,学校里面,一个班只有一个正班长,而一个班长只例如,学校里面,一个班只有一个正班长,而一个班长只在一个班中任职,则班与班长之间具有一对一联系。在一个班中任职,则班与班长之间具有一对一联系。2.1:n联系联系 如果对于实体集如果对于实体集A中的每一个实体,实体集中的每一个实体,实体集B中有中有n个实体个实体(n0)与之联系,反之,对于实体集)与之联系,反之,对于实体集B中的每一个实体,实中的每一个实体,实体集体集A中至多只有一个实体与之联系,则称实体集中至多只有一个实体与之联系,则称实体集A与实体集与实体集B有有1
12、:n联系。联系。例如,一个班有若干名学生,而每个学生只在一个班中学例如,一个班有若干名学生,而每个学生只在一个班中学习,则班与学生之间具有一对多联系。习,则班与学生之间具有一对多联系。3.m:n联系联系 如果实体集如果实体集A中的每一个实体,实体集中的每一个实体,实体集B中有中有n个实体个实体(n0)与之联系,反之,对于实体集)与之联系,反之,对于实体集B中的每一个实体,实中的每一个实体,实体集体集A中也有中也有m个实体(个实体(m0)与之联系,则称实体集)与之联系,则称实体集A与实与实体集体集B具有多对多联系,记为具有多对多联系,记为m:n。例如,一门课程同时有若干个学生选修,而一个学生可以
13、例如,一门课程同时有若干个学生选修,而一个学生可以同时选修多门课程,则课程与学生之间具有多对多联系。同时选修多门课程,则课程与学生之间具有多对多联系。建立概念模型最常用的方法是实体建立概念模型最常用的方法是实体-联系方法,简称联系方法,简称E-R方方法。该方法直接从现实世界中抽象出实体和实体间的联系,法。该方法直接从现实世界中抽象出实体和实体间的联系,然后用然后用E-R图来表示数据模型。图来表示数据模型。在在E-R图中实体用方框表示;联系用菱形表示,并且用边图中实体用方框表示;联系用菱形表示,并且用边将其与有关的实体连接起来,并在边上标上联系的类型;属将其与有关的实体连接起来,并在边上标上联系
14、的类型;属性用椭圆表示,并且用边将其与相应的实体连接起来。对于性用椭圆表示,并且用边将其与相应的实体连接起来。对于有些联系,其自身也会有某些属性,同实体与属性的连接类有些联系,其自身也会有某些属性,同实体与属性的连接类似,将联系与其属性连接起来。似,将联系与其属性连接起来。2.2.3 实体联系表示法(实体联系表示法(E-R方法)方法)两个不同实体集之间存在两个不同实体集之间存在1:1、1:n和和m:n联系,可以用图联系,可以用图形来表示两个实体集之间的这三类联系,如图形来表示两个实体集之间的这三类联系,如图2.2所示。所示。1.两个不同实体集之间联系的画法两个不同实体集之间联系的画法两个以上不
15、同实体集之间可能存在各种关系,以两个以上不同实体集之间可能存在各种关系,以3个不同实体集个不同实体集A、B和和C为例,它们之间的典型关系有为例,它们之间的典型关系有1:n:m和和r:n:m联联系。系。对于对于1:n:m联系,表示联系,表示A和和B之间是之间是1:n(一对多)联系,(一对多)联系,B和和C之间是之间是n:m(多对多)联系,(多对多)联系,A和和C之间是之间是1:m(一对多)(一对多)联系。这两个典型关系的表示方法如图联系。这两个典型关系的表示方法如图2.3所示。所示。2.两个以上不同实体集之间联系的画法两个以上不同实体集之间联系的画法3.同一实体集内的二元联系的画法同一实体集内的
16、二元联系的画法 同一实体集内的二元联系表示其中实体之间相互联系,同同一实体集内的二元联系表示其中实体之间相互联系,同样有样有1:1、1:n和和n:m联系。例如,职工实体集中的领导与联系。例如,职工实体集中的领导与被领导的联系是被领导的联系是1:n的,而职工实体集中的婚姻联系是的,而职工实体集中的婚姻联系是1:l的。的。同一实体集内的同一实体集内的1:1、1:n和和n:m联系如图联系如图2.4所示。所示。【例【例2.1】试画出试画出3个个E-R图,要求实体型之间具有一对一、图,要求实体型之间具有一对一、一对多和多对多各种不同的联系。一对多和多对多各种不同的联系。解:解:部门和部门主任部门和部门主
17、任之间的之间的“领导领导”联系是一联系是一个一对一的联系,其个一对一的联系,其E-R图如图图如图2.5所示。所示。部门和职工之间的部门和职工之间的“所属所属”联系是一个一对多联系是一个一对多的联系,其的联系,其E-R图如图图如图2.6所示。所示。维修人员和设备之间维修人员和设备之间的的“维修维修”联系是一个多联系是一个多对多的联系,其对多的联系,其E-R图图如图如图2.7所示。所示。2.2.4 怎样设计怎样设计E-R图图设计设计E-R图的基本步骤如下:图的基本步骤如下:(1)用方框表示出实体。)用方框表示出实体。(2)用椭圆表示各实体的属性。)用椭圆表示各实体的属性。(3)用菱形表示实体之间的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第2章 数据模型
限制150内