数据库原理与应用课件第2章数据模型_第1页
数据库原理与应用课件第2章数据模型_第2页
数据库原理与应用课件第2章数据模型_第3页
数据库原理与应用课件第2章数据模型_第4页
数据库原理与应用课件第2章数据模型_第5页
已阅读5页,还剩63页未读 继续免费阅读

下载本文档

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

文档简介

第2章数据模型使学生能够掌握数据模型的概念、分类及表示方法;掌握数据模型组成的三要素;了解常见的几种逻辑模型:层次模型、网状模型和关系模型。教学目标掌握数据模型的概念和常见的几种数据模型,掌握关系模型组成的三要素(数据结构)、动态特征(数据操作)和完整性约束条件的三个要素。技能目标(1)数据模型组成的三要素(2)两级映像(3)常见的逻辑模型重点数据模型组成的三要素难点

数据模型是数据特征的抽象,是数据库管理的教学形式框架,是数据库系统中用以提供信息表示和操作手段的形式构架。要求)数据库发展的三个阶段返回`数据库的四个基本概念第2章数据模型2.1数据模型概述2.2数据模型的组成要素2.3概念模型2.4逻辑模型

2.5物理模型2.1数据模型概述1.数据模型的概念2.模型的分类2.1数据模型概述数据模型(DataModel)是数据特征的抽象,是数据库管理的教学形式框架,是数据库系统中用以提供信息表示和操作手段的形式构架。数据模型包括数据库数据的结构部分、操作部分和约束条件。

1.数据模型的概念2.1数据模型概述用数据模型进行抽象和描述的要求是:①能比较真实地模拟现实世界;②容易理解;③便于在计算机上实现;④能够实现对现实世界的数据描述。1.数据模型的概念2.1数据模型概述DBMS支持的数据模型概念模型认识抽象信息世界机器世界现实世界中客观对象的抽象过程现实世界现实世界概念模型数据库设计人员完成逻辑模型物理模型由DBMS完成概念模型逻辑模型数据库设计人员完成

数据的表示2.1数据模型概述(1)概念模型(2)逻辑数据模型(3)物理数据模型2.数据模型的分类2.1数据模型概述面向数据库用户的现实世界的数据模型,主要用来描述世界的概念化结构,它是数据库的设计人员在设计的初始阶段对信息世界的建模,不需要按照DBMS模型进行分析,与具体的DBMS无关。

(1)概念模型2.1数据模型概述用户从数据库所看到的数据模型,是具体的DBMS所支持的数据模型,如网状数据模型、层次数据模型和关系数据模型。

(2)逻辑数据模型2.1数据模型概述描述数据在存储介质上的组织结构的数据模型,它不但与具体的DBMS有关,而且还与操作系统和硬件有关。

(3)物理数据模型

DBMS为了保证其独立性与可移植性,大部分物理数据模型的实现工作由系统自动完成,而设计者只设计索引、聚集等特殊结构。2.2数据模型的组成要素1.数据结构2.数据操作3.完整性约束条件2.2数据模型的组成要素描述数据的类型、内容、性质以及数据间的联系等对象的集合,这些对象是数据库的组成成分。数据结构指对象和对象间联系的表达和实现,是对系统静态特征的描述。1.数据结构一类是与数据类型、内容、性质有关的对象;一类是与数据之间联系有关的对象。包括两类:2.2数据模型的组成要素对数据库中各种对象的实例允许执行的操作的集合,包括操作及有关的操作规则,主要指检索和更新(插入、删除、修改)两大类操作。2.数据操作

任何数据模型必须定义这些操作的确切含义、操作符号、操作规则(如优先级)以及实现操作的语言。数据操作是对系统动态特性的描述。2.2数据模型的组成要素是一组完整性规则的集合,主要描述数据结构内数据间的语法、词义联系,它们之间的制约和依存规则,以及数据动态变化的规则,以保证数据的正确、有效和相容。3.完整性约束

例如:在关系模型中,任何关系必须满足实体完整性和参照完整性这两个约束条件。

数据库系统必须提供完整性约束规则的定义机制,以满足应用对所涉及的数据特定的语义要求。

2.3概念模型1.信息世界的基本概念2.实体之间的联系3.概念模型的表示方法概念模型是对信息世界的建模,是现实世界的第一层抽象,是数据库设计人员进行数据库设计的有利工具,是用户和数据库设计人员之间进行交流的工具。2.3概念模型

(1)实体(Entity)客观存在并可相互区别的事物称为实体。可以是具体的人、事、物或抽象的概念。也可以是抽象概念联系例如:学生和系的隶属关系1.信息世界的基本概念

(2)属性(Attribute)实体所具有的某一特性称为属性。一个实体可以由若干个属性来刻画。例如:学生实体可以由学号、姓名、性别、所在系、入学时间等属性组成。2.3概念模型

(3)码(Key)唯一标识实体的属性集称为码。例如:学号是学生实体的码(学号是唯一的,没有重复值)。1.信息世界的基本概念

(4)域(Domain)属性的取值范围称为该属性的域。

例如:姓名的域为10位字符,性别的域为(男,女)。2.3概念模型

(5)实体型(EntityType)用实体名及其属性名集合来抽象和刻画同类实体称为实体型例如:学生(学号、姓名、性别、年龄、联系电话)就是一个实体型。1.信息世界的基本概念(6)实体集(EntitySet)具有相同属性的类的集合称为实体集

例如:学生实体集和教师实体集。2.3概念模型

(7)联系(Relationship)现实世界中事物内部以及事物之间的联系在信息世界中反映为实体内部的联系和实体之间的联系。1.信息世界的基本概念实体内部的联系通常是指组成实体的各属性之间的联系实体之间的联系通常是指不同实体集之间的联系

2.3概念模型(1)实体型用矩形表示,矩形框内写明实体名。(2)属性用椭圆形表示,并用无向边将其与相应的实体连接起来学生教师学生学号年龄性别姓名3.概念模型的表示方法E-R图描述概念模型,并从中抽象出实体和实体之间的联系2.3概念模型(3)联系联系本身:用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(1:1、1:n或m:n)3.概念模型的表示方法2.3概念模型实体型A联系名实体型B111:1联系实体型A联系名1n1:n联系实体型A实体型B联系名mnm:n联系实体型B用图形来表示两个实体型之间的这三类联系

3.概念模型的表示方法2.3概念模型

一对一联系(1:1)

实例一个班级只有一个正班长一个班长只在一个班中任职定义:如果对于实体集A中的每一个实体,实体集B中至多有一个(也可以没有)实体与之联系,反之亦然,则称实体集A与实体集B具有一对一联系,记为1:1

班级班级-班长班长111:1联系3.概念模型的表示方法2.3概念模型

一对多联系(1:n)实例一个班级中有若干名学生,每个学生只在一个班级中学习定义:如果对于实体集A中的每一个实体,实体集B中有n个实体(n≥0)与之联系,反之,对于实体集B中的每一个实体,实体集A中至多只有一个实体与之联系,则称实体集A与实体集B有一对多联系,记为1:n班级组成学生1n1:n联系3.概念模型的表示方法2.3概念模型多对多联系(m:n)实例课程与学生之间的联系:一门课程同时有若干个学生选修一个学生可以同时选修多门课程定义:如果对于实体集A中的每一个实体,实体集B中有n个实体(n≥0)与之联系,反之,对于实体集B中的每一个实体,实体集A中也有m个实体(m≥0)与之联系,则称实体集A与实体B具有多对多联系,记为m:n课程选修学生mnm:n联系3.概念模型的表示方法2.3概念模型两个以上实体型之间一对多联系若实体集E1,E2,...,En存在联系,对于实体集Ej(j=1,2,...,i-1,i+1,...,n)中的给定实体,最多只和Ei中的一个实体相联系,则我们说Ei与E1,E2,...,Ei-1,Ei+1,...,En之间的联系是一对多的2.3概念模型实例:课程、教师与参考书三个实体型一门课程可以有若干个教师讲授,使用若干本参考书,每一个教师只讲授一门课程,每一本参考书只供一门课程使用课程讲授教师1m两个以上实体型间1:n联系参考书n2.3概念模型(1)多个实体型间的一对一联系(2)两个以上实体型间的多对多联系实例:供应商、项目、零件三个实体型一个供应商可以供给多个项目多种零件每个项目可以使用多个供应商供应的零件每种零件可由不同供应商供给供应商供应项目mp两个以上实体型间m:n联系零件n2.3概念模型(3)单个实体型内的联系一对多联系实例职工实体型内部具有领导与被领导的联系某一职工(干部)“领导”若干名职工一个职工仅被另外一个职工直接领导这是一对多的联系一对一联系

请举例职工领导1n单个实体型内部1:n联系2.3概念模型实体型1联系名mn单个实体型内的m:n联系多对多联系请举例2.3概念模型课程选修学生mn成绩联系的属性:联系本身也是一种实体型,也可以有属性。如果一个联系具有属性,则这些属性也要用无向边与该联系连接起来

2.4逻辑模型1.层次模型2.网状模型3.关系模型逻辑模型是面向数据库的逻辑结构,是现实世界的第二次抽象。逻辑模型实质上是向用户提供的一组规则,这些规则可以规定计算机系统中数据结构的组织和相应允许进行的操作。2.4逻辑模型层次模型是数据库系统中最早出现的数据模型。层次数据库系统的典型代表是IBM公司的IMS(InformationManagementSystem)数据库管理系统层次模型用树形结构来表示各类实体以及实体间的联系1.层次模型

满足下面两个条件的基本层次联系的集合为层次模型(1)有且只有一个结点没有双亲结点,这个结点称为根结点(2)根以外的其它结点有且只有一个双亲结点2.4逻辑模型

R1

根结点

R2

兄弟结点

R3

叶结点

R4

兄弟结点

R5

叶结点

叶结点一个层次模型的示例1.层次模型2.4逻辑模型层次模型的特点:结点的双亲是唯一的只能直接处理一对多的实体联系每个记录类型可以定义一个排序字段,也称为码字段任何记录值只有按其路径查看时,才能显出它的全部意义没有一个子女记录值能够脱离双亲记录值而独立存在1.层次模型2.4逻辑模型

教员学生层次数据库模型

根结点记录型系的子女结点记录型教员的双亲结点叶结点叶结点字段2.4逻辑模型

教员学生层次数据库的一个值

2.4逻辑模型层次模型的优点层次模型的数据结构比较简单清晰查询效率高,性能优于关系模型,不低于网状模型层次数据模型提供了良好的完整性支持层次模型的缺点多对多联系表示不自然对插入和删除操作的限制多,应用程序的编写比较复杂查询子女结点必须通过双亲结点由于结构严密,层次命令趋于程序化2.网状模型网状数据库系统采用网状模型作为数据的组织方式典型代表是DBTG系统:亦称CODASYL系统70年代由DBTG提出的一个系统方案奠定了数据库系统的基本概念、方法和技术实际系统CullinetSoftwareInc.公司的IDMSUnivac公司的DMS1100Honeywell公司的IDS/2HP公司的IMAGE2.4逻辑模型2.4逻辑模型满足下面两个条件的基本层次联系的集合:(1)允许一个以上的结点无双亲;(2)一个结点可以有多于一个的双亲。2.网状模型2.4逻辑模型表示方法(与层次数据模型相同)实体型:用记录类型描述,每个结点表示一个记录类型(实体)属性:用字段描述每个记录类型可包含若干个字段联系:用结点之间的连线表示记录类型(实体)之间的一对多的父子联系2.网状模型2.4逻辑模型网状模型与层次模型的区别:网状模型允许多个结点没有双亲结点网状模型允许结点有多个双亲结点网状模型允许两个结点之间有多种联系(复合联系)网状模型可以更直接地去描述现实世界层次模型实际上是网状模型的一个特例2.4逻辑模型网状模型中子女结点与双亲结点的联系可以不唯一要为每个联系命名,并指出与该联系有关的双亲记录和子女记录

R1与R3之间的联系L1R2与R3之间的联系L2

2.4逻辑模型网状模型的例子

2.4逻辑模型例如:一个学生可以选修若干门课程,某一课程可以被多个学生选修,学生与课程之间是多对多联系引进一个学生选课的联结记录,由3个数据项组成学号课程号成绩表示某个学生选修某一门课程及其成绩2.4逻辑模型

学生/选课/课程的网状数据模型2.4逻辑模型

学生/选课/课程的网状数据库实例

学生记录课程记录选课记录2.4逻辑模型网状数据模型的优点能够更为直接地描述现实世界,如一个结点可以有多个双亲具有良好的性能,存取效率较高网状数据模型的缺点结构比较复杂,而且随着应用环境的扩大,数据库的结构就变得越来越复杂,不利于最终用户掌握DDL、DML语言复杂,用户不容易使用2.4逻辑模型关系数据库系统采用关系模型作为数据的组织方式1970年美国IBM公司SanJose研究室的研究员E.F.Codd首次提出了数据库系统的关系模型计算机厂商新推出的数据库管理系统几乎都支持关系模型

3.关系模型(1)关系数据模型的数据结构

在用户观点下,关系模型中数据的逻辑结构是一张二维表,它由行和列组成。学号姓名年龄性别系名年级2005004王小明19女社会学20052005006黄大鹏20男商品学20052005008张文斌18女法律2005………………学生登记表属性元组2.4逻辑模型3.关系模型2.4逻辑模型关系(Relation)一个关系对应通常说的一张表元组(Tuple)表中的一行即为一个元组属性(Attribute)表中的一列即为一个属性,给每一个属性起一个名称即属性名3.关系模型2.4逻辑模型主码(Key)表中的某个属性组,它可以唯一确定一个元组。域(Domain)属性的取值范围。分量元组中的一个属性值。关系模式对关系的描述关系名(属性1,属性2,…,属性n)学生(学号,姓名,年龄,性别,系,年级)3.关系模型2.4逻辑模型例1学生、系、系与学生之间的一对多联系:学生(学号,姓名,年龄,性别,系号,年级)系(系号,系名,办公地点)例2系、系主任、系与系主任间的一对一联系3.关系模型2.4逻辑模型例3学生、课程、学生与课程之间的多对多联系:

学生(学号,姓名,年龄,性别,系号,年级)课程(课程号,课程名,学分)选修(学号,课程号,成绩)2.4逻辑模型关系必须是规范化的,满足一定的规范条件最基本的规范条件:关系的每一个分量必须是一个不可分的数据项,不允许表中还有表

图中工资和扣除是可分的数据项,不符合关系模型要求

职工号姓名职称工资扣除实发基本津贴职务房租水电86051陈平讲师13051200501601122283一个工资表(表中有表)实例2.4逻辑模型关系术语一般表格的术语关系名表名关系模式表头(表格的描述)关系

温馨提示

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

评论

0/150

提交评论