数据库课件:数据模型_第1页
数据库课件:数据模型_第2页
数据库课件:数据模型_第3页
数据库课件:数据模型_第4页
数据库课件:数据模型_第5页
已阅读5页,还剩42页未读 继续免费阅读

下载本文档

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

文档简介

数据模型

数据管理技术经历:

人工管理

文件系统

数据库系统

高级数据库阶段2访问数据1程序1应用程序与数据之间的对应关系3应用程序1文件1...文件2应用程序2...应用程序n文件n文件系统应用程序与数据之间的对应关系4DBMS应用程序1应用程序2数据库…应用程序与数据的对应关系(数据库系统)5数据库三级模式结构和二级功能映射6物理独立性?逻辑独立性?考考你2.1数据模型概述2.2E-R模型2.3层次数据模型2.4网状数据模型2.5关系数据模型2.6数据模型与数据模式

2.1数据模型概述在数据库中用数据模型这个工具来抽象、表示和处理现实世界中的数据和信息。通俗地讲数据模型就是现实世界的模拟。

数据模型应满足三方面要求:能比较真实地模拟现实世界容易为人所理解便于在计算机上实现数据模型是数据库系统的核心和基础。2.1数据模型概述在数据库中用数据模型这个工具来抽象、表示和处理现实世界中的数据和信息。通俗地讲数据模型就是现实世界的模拟。

数据模型应满足三方面要求:能比较真实地模拟现实世界容易为人所理解便于在计算机上实现数据模型是数据库系统的核心和基础。2.1数据模型概述数据模型分成两个不同的层次:(1)概念模型也称信息模型,它是按用户的观点来对数据和信息建模。主要用于数据库设计。(2)数据模型(逻辑模型和物理模型)它是按计算机系统的观点对数据建模。主要用于DBMS的实现。主要包括网状模型、层次模型、关系模型等2.1数据模型概述客观对象的抽象过程——两步抽象:第一步:现实世界中的客观对象抽象为概念模型;第二步:把概念模型转换为某一DBMS支持的数据模型。现实世界机器世界信息世界需求分析概念结构设计逻辑和物理结构设计2.1.1数据模型的定义

一般地讲,数据模型是严格定义的一组概念的集合,这些概念精确地描述了系统的静态特性、动态特性和完整性约束条件。数据结构数据操作数据的约束条件1.数据结构什么是数据结构数据库的组成对象以及对象之间联系的描述两类对象与数据类型、内容、性质有关的对象与数据之间联系有关的对象数据结构是对系统静态特性的描述2.数据操作数据操作对数据库中各种对象(型)的实例(值)允许执行的操作及有关的操作规则数据操作的类型检索更新(包括插入、删除、修改)数据操作是对系统动态特性的描述。3.数据的约束条件数据的约束条件一组完整性规则的集合。完整性规则是给定的数据模型中数据及其联系所具有的制约和储存规则,用以限定符合数据模型的数据库状态以及状态的变化,以保证数据的正确、有效、相容。如:年龄必须大于零,关系必须满足实体完整性和参照完整性等。2.1.2概念模型中的一些基本概念1.实体(Entity)客观存在并可相互区别的事物称为实体。可以是具体的人、事、物或抽象的概念。2.属性(Attribute)实体所具有的某一特性称为属性。一个实体可以由若干个属性来刻画3.关键字(Key)实体概念的关键之处在于一个实体能够与别的实体相互区别,因此每个实体都有本身的关键字(也称为标志符或关键码)。实体的关键字是惟一能标志实体的属性的集合。4.域(Domain)属性的取值范围称为该属性的域。5.实体型(EntityType)用实体名及其属性名集合来抽象和刻画的某一类实体称为实体型。6.实体集(EntitySet)同型实体的集合称为实体集。举例说明实体型和实体集的区别可以用什么属性区分开学生实体?概念模型的主要概念(续)(7)联系(Relationship)现实世界中事物内部以及事物之间的联系在信息世界中反映为实体内部的联系和实体之间的联系。实体内部的联系:组成实体的各属性之间的联系实体之间的联系:不同实体集之间的联系三类实体型间联系一对一联系(1:1)一对多联系(1:n)多对多联系(m:n)

1.实体型之间的联系一对一联系

如果对于实体集A中的每一个实体,实体集B中至多有一个实体与之联系,反之亦然,则称实体集A与实体集B具有一对一联系。记为1:1。实例班级与班长之间的联系:一个班级只有一个正班长,而一个班长只在一个班中任职两个实体型间的联系(续)一对多联系如果对于实体集A中的每一个实体,实体集B中有n个实体(n≥0)与之联系,反之,对于实体集B中的每一个实体,实体集A中至多只有一个实体与之联系,则称实体集A与实体B有一对多联系。记为1:n实例班级与学生之间的联系:一个班级中有若干名学生,而每个学生只在一个班级中学习两个实体型间的联系(续)多对多联系(m:n)如果对于实体集A中的每一个实体,实体集B中有n个实体(n≥0)与之联系,反之,对于实体集B中的每一个实体,实体集A中也有m个实体(m≥0)与之联系,则称实体集A与实体B具有多对多联系。记为m:n实例

课程与学生之间的联系:一门课程同时有若干个学生选修,而一个学生可以同时选修多门课程2多个实体型间的联系多个实体型之间的联系一对一联系一对多联系多对多联系多个实体型间的联系(续)多个实体型间的一对多联系实例对于课程、教师与参考书三个实体型,如果一门课程可以有若干个教师讲授,使用若干本参考书,而每一个教师只讲授一门课程,每一本参考书只供一门课程使用,则课程与教师、参考书之间的联系是一对多的课程讲授教师1m多个实体型间的1:n联系参考书n多个实体型间的联系(续)多个实体型间的一对一联系多个实体型间的多对多联系3.同一实体集内各实体间的联系一对多联系实例

职工实体集内部具有领导与被领导的联系,即某一职工(干部)“领导”若干名职工,而一个职工仅被另外一个职工直接领导,因此这是一对多的联系一对一联系多对多联系职工领导1n同一实体型内部的1:n联系2.2E-R模型概念模型的表示方法很多实体-联系方法(E-R方法)是最为常用的概念模型表示方法。用E-R图来描述现实世界的概念模型。E-R方法也称为E-R模型。E-R模型用E-R图来抽象表示现实世界的数据特征,是一种表达能力强、易于掌握的概念数据模型。E-R图实体型用矩形表示,矩形框内写明实体名。学生教师E-R图(续)属性用椭圆形表示,并用无向边将其与相应的实体连接起来学生学号年龄性别姓名E-R图(续)联系联系本身:用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(1:1、1:n或m:n)联系的表示方法实体型1联系名实体型2111:1联系实体型1联系名实体型2mnm:n联系实体型1联系名实体型21n1:n联系联系的表示方法(续)实体型1联系名mn同一实体型内部的m:n联系实体型1联系名实体型21m多个实体型间的1:n联系实体型3n联系的表示方法示例班级班级-班长班长111:1联系课程选修学生mnm:n联系班级组成学生1n1:n联系联系的表示方法示例(续)职工领导1n同一实体型内部的1:n联系课程讲授教师1m多个实体型间的1:n联系参考书nE-R图(续)联系联系的属性:联系本身也是一种实体型,也可以有属性。如果一个联系具有属性,则这些属性也要用无向边与该联系连接起来。联系属性的表示方法课程选修学生mn成绩一个设计E-R模型的具体例子【例2-1】库存业务的管理模式语义如下:在一个仓库可以存放多种器件,一种器件也可以存放在多个仓库中。一个仓库有多个职工,而一个职工只能在一个仓库工作。一个职工可以保管一个仓库中的多种器件,由于一种器件可以存放在多个仓库中,当然可以由多名职工保管。库存业务E-R图如下:2.3层次数据模型层次模型:用树形结构来表示各类实体以及实体间的联系的数据模型。满足下面两个条件的基本层次联系的集合为层次模型:1.有且只有一个结点没有双亲结点,这个结点称为根结点2.根以外的其它结点有且只有一个双亲结点层次模型中的几个术语根结点,双亲结点,兄弟结点,叶结点层次数据模型的数据结构(续)

R1

根结点

R2

兄弟结点

R3

叶结点

R4

兄弟结点

R5

叶结点

叶结点2.3层次数据模型表达事物之间的逻辑层次关系数据项是简单数据类型1:n自然,直观,容易理解,性能好,但不能充分表达现实世界不便于表示m:n关系,在转换成多个1:n会出现大量数据冗余。为此引入指针和虚拟记录(用v标记引用某个记录)用户了解数据的物理结构,并在数据操纵命令中显式地给出存取途径。数据独立性较差。层次数据库示例某大学………计算机学院工商管理学院经贸学院计算机系网络中心………管理系99级2000级………………学生甲学生乙………………2.4网状数据模型用网络结构来表示实体之间联系的数据模型,反映着现实世界中实体间更为复杂的联系数据项不一定是简单的数据类型允许结点之间的多种联系,可表达更复杂结构m:n更好地描述现实世界,良好的性能,存取效率高,但结构复杂,增加了用户查询和定位的困难,不易掌握。网状数据库示例某大学学生甲选修课程1学生乙选修课程2选修课程3选修课程42.5关系数据模型关系模型是用二维表格结构来表示实体及实体之间的联系的模型1970年美国IBM公司SanJose研究室的研究员E.F.Codd首次提出了数据库系统的关系模型计算机厂商新推出的数据库管理系统几乎都支持关系模型关系数据模型

关系数据模型是应用最广泛的一种数据模型。优点:(1)能够以简单、灵活的方式表达现实世界中各种实体及其相互间关系,使用与维护也很方便。(2)具有严密的数学基础和操作代数基础——如关系代数、关系演算等,可将关系分开,或将两个关系合并,使数据的操纵具有高度的灵活性。(3)在关系数据模型中,数据间的关系具有对称性,因此,关系之间的寻找在正反两个方向上难度是一样的,而在其他模型如层次模型中从根结点出发寻找叶子的过程容易解决,相反的过程则很困难。关系数据模型

关系数据模型是应用最广泛的一种数据模型。缺点:(1)实现效率不够高(2)描述对象语义的能力较弱。(3)不直接支持层次结构,因此不直接支持对于概括、分类和聚合的模拟,即不适合于管理复杂对象

温馨提示

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

评论

0/150

提交评论