数据模型和三层模式数据库ppt课件.ppt

上传人:牧羊曲112 文档编号:1346832 上传时间:2022-11-12 格式:PPT 页数:106 大小:1.27MB
返回 下载 相关 举报
数据模型和三层模式数据库ppt课件.ppt_第1页
第1页 / 共106页
数据模型和三层模式数据库ppt课件.ppt_第2页
第2页 / 共106页
数据模型和三层模式数据库ppt课件.ppt_第3页
第3页 / 共106页
数据模型和三层模式数据库ppt课件.ppt_第4页
第4页 / 共106页
数据模型和三层模式数据库ppt课件.ppt_第5页
第5页 / 共106页
点击查看更多>>
资源描述

《数据模型和三层模式数据库ppt课件.ppt》由会员分享,可在线阅读,更多相关《数据模型和三层模式数据库ppt课件.ppt(106页珍藏版)》请在三一办公上搜索。

1、第2章 数据模型和三层模式数据库,数据的三种范畴数据模型 数据模型的分类 概念模型(概念型数据模型) 数据模型(组织型数据模型) 概念模型向数据模型的转换数据独立性与三层结构数据库管理系统的结构,一、数据的三种范畴,现实,信息,电脑,思路:,目的:描述数据和数据之间的联系,方法:使用数据模型概念模型(概念层数据模型)与数据模型(组织层数据模型),客观存在并可以相互区分的客观事物或抽象事件称为实体。,客观存在的抽象事件订货、演出、足球赛等也是实体,可以触及的客观对象仓库、器件、职工等是实体,实体,身高年龄性别体重,比赛时间、地点、参赛队,特征,具有相同特征的一类实体的集合称之为实体集。,学生实体

2、集,课程实体集,教师实体集,教室实体集,实体集,用于区分实体的实体特征称为标识特征。,标识特征,特征,实体,实体集,标识特征,现实世界的术语,文件,记录,字段,关键字,我们更熟悉的术语,三种范畴使用的术语,弱实体,在现实世界中还存在一类“客体”,它自身不具有标识特征,它需要借助于所依赖的实体来区分一个个“客体”,我们把这类“客体”称为弱实体。(见第10章)例1:对订购单要管理订购单明细,订购单明细就是弱实体例2:对球赛要管理上、下半场信息,半场就是弱实体,二、数据模型,数据模型: 用来抽象、表示和处理现实世界中的数据和信息的。数据模型应满足三个条件:能比较真实地模拟现实世界;容易被人们理解;便

3、于在计算机上实现。,1.数据模型的分类,现实世界客观事物的抽象过程,现 实,机 器,概念模型,组织模型,模型,抽象,2.概念数据模型,概念模型实际上是现实世界到机器世界的一个中间层次。 概念模型用于信息世界的建模,是现实世界到信息世界的第一层抽象。是数据库设计人员和用户之间进行交流的工具 。是面向用户、面向现实世界的数据模型,是与DBMS无关 。概念模型的表示方法:实体-联系方法(E-R图),扩展Bachman图,实体-联系方法,实体联系属性,实体的表示方式,在E-R图中用矩形框表示实体,把实体名写在框内,比如仓库实体可以表示为:,仓库,实体之间的联系用菱形框表示,框内写上联系名,并用连线与有

4、关的实体相连。,联系名,实体1,实体2,联系的表示方式,一对一联系(1:1)一对多联系(1:n)多对多联系(m:n),联系的类型,如果实体集A与实体集B之间存在联系,并且对于实体集A中的任意一个实体,实体集B中至多只有一个实体与之对应;反之亦然,则称实体集A到实体集B的联系是一对一的,记为1 : 1 。,一对一的联系,实体:车间,车间主任语义:一个车间只能有一名车间主任一个职工也只能在一个车间当主任联系:命名为任职,任职,车间,车间主任,一对一联系的例子,一对多的联系,如果实体集A与实体集B之间存在联系,并且对于实体集A中的一个实体,实体集B中可以有多个实体与之对应;而对实体集B中的任意一个实

5、体,在实体集A中至多只有一个实体与之对应,则称实体集A到实体集B的联系是一对多的,记为1 : n 。,工作,仓库,职工,实体:仓库,职工语义:一个仓库可以有多名职工一个职工只能在一个仓库工作联系:命名为工作,一对多联系的例子,多对多的联系,如果实体集A与实体集B之间存在联系,并且对于实体集A中的一个实体,实体集B中可以有多个实体与之对应;反之亦然,则称实体集A到实体集B的联系是多对多的,记为m : n 。,仓库,器件,库存,实体:仓库,器件语义:一个仓库可以存放多种器件一种器件可以存放在多个仓库联系:命名为库存,多对多联系的例子,仓库,器件,供应商,订购,多个实体之间的联系,实体:仓库、器件、

6、供应商语义:每个仓库可以向多个供应商发出订购,可购买多种器件;每个供应商可向多个仓库供货,可供应多种器件;每种器件可由多个供应商供应,可由多个仓库购买。联系:命名为订购,多个实体之间的另外一种联系,两种联系方式的区别,实体的属性用椭圆框表示,框内写上属性名,并用连线连到相应实体。也可以直接将属性名写在实体旁边。,属性的表示方式,联系本身也有属性,联系是通过相关联的实体的有关属性体现出来的。课堂练习:P41第2题,联系的属性,特殊的:依赖联系,弱实体集的属性不足以构成主关键字,为了区分弱实体集中的一个个实体,需要借助于另一个实体集中的主关键字。这种被依赖的实体集也称作强实体集,在弱实体集和强实体

7、集之间必然存在着一种联系,并把这种联系称作依赖联系。(见第10章),依赖联系的例子,依赖联系都是一对多的联系,弱实体集也只有作为一对多联系的一部分才有意义。,强制联系与非强制联系,实体之间的联系可以分为强制联系和非强制联系 。(见第10章)例:部门和职工之间的联系,如果规定职工任何时候都必须属于一个部门,则这种联系是强制联系;如果规定职工可以不属于任何部门则这种联系就是非强制联系。依赖联系都是强制联系。,实体之间的联系类型并不取决于实体本身,而是取决于现实世界的管理方法,或者说取决于语义,即同样两个实体,如果有不同的语义则可以得到不同的联系类型。,注意:,以仓库和器件两个实体之间的关联为例:,

8、如果规定一个仓库只能存放一种器件,并且一种器件只能存放在一个仓库,这时仓库和器件之间的联系是一对一的;如果规定一个仓库可以存放多种器件,但是一种器件只能存放在一个仓库,这时仓库和器件之间的联系是一对多的;如果规定一个仓库可以存放多种器件,同时一种器件可以存放在多个仓库,这时仓库和器件之间的联系是多对多的。,建立库存订购数据库,概念数据模型实例研究(书2.2.4),仓库,器件,职工,库存业务?,与库存业务有关的实体,库存业务的管理模式语义:,在一个仓库可以存放多种器件,一种器件也可以存放在多个仓库中;一个仓库有多个职工,而一个职工只能在一个仓库工作;一个职工可以保管一个仓库中的多种器件,由于一种

9、器件可以存放在多个仓库中,当然可以由多名职工保管。,在仓库和器件之间存在一个多对多的联系 库存;在仓库和职工之间存在一个一对多的联系 工作;在职工和器件之间存在一个多对多的联系 保管。,以上语义说明了:,为此有库存业务的局部E-R图,职工,器件,供应商,订购单,订购业务?,与订购业务有关的实体,订购业务管理模式语义:,一名职工可以经手多张订购单,但一张订购单只能由一名职工经手;一个供应商可以接受多张订购单,但一张订购单只能发给一个供应商;一个供应商可以供应多种器件,每种器件也可以由多个供应商供应;一张订购单可以订购多种器件,对每种器件的订购也可以出现在多张订购单上。,在职工和订购单之间存在一个

10、一对多的联系发出订购单;在供应商和订购单之间存在一个一对多的联系接收订购单;在供应商和器件之间存在一个多对多的联系供应;在订购单和器件之间存在一个多对多的联系订购。,以上语义说明了:,为此有订购业务的局部E-R图,库存订购业务整体E-R图,扩展Bachman图是与E-R图类似的信息结构和概念模型描述工具,它的要点是: 用矩形框表示实体或文件,实体名写在矩形框的右下方; 字段名写在矩形框内,关键字标以下划线,辅助关键字标以虚下划线; 用箭头线表示联系并连接相关实体,箭头线始于父文件的连接字段(关键字),终于子文件的连接字段(外部关键字),联系类型标在箭头线旁。,扩展Bachman图,库存和订货业

11、务的完整扩展Bachman图,3.数据模型(传统的三大数据模型,面向对象模型)(书2.3节),层次模型,关系模型,课本P25,用树形结构来表示实体之间联系的模型称为层次模型。 只能表示一对多的联系。 层次模型的典型代表是IMSInformation Management System,(1)层次数据模型,层次模型有以下两点限制:,有且仅有一个结点无父结点,这个结点即为树的根;其他结点有且仅有一个父结点,层次结构实例,层次模型中用的术语,层次型,片段(Segment),字段,型和值?,层次值实例,层次型不能表示多对多的联系,把有两个父结点的非层次结构转换成两个层次型,用网络结构来表示实体之间联系

12、的数据模型称为网络数据模型。,网络模型的典型代表是CODASYL Conference On DAta SYstem Language,(2)网络数据模型,CODASYL用系描述联系,系:命名了的联系。SET:相互关联的数据的集合。,系由一个父记录型和一个或多个子记录型构成。系是一个二级树。,网络结构,理解系的概念,系值,用关系(表格数据)表示实体和实体之间联系的模型称为关系数据模型。,(3)关系数据模型,关系实例,仓库(仓库号,城市,面积)关系模式,关系数据库管理系统,SybaseOracleDB2MS SQL ServerFoxProAccess,?,仓库,器件,4.概念模型向数据模型的转

13、换,只需设计一个物理文件,图2.8,如果仓库和器件之间的联系是一对一的:,需要设计两个物理文件,图2.5和图2.11,如果仓库和器件之间的联系是一对多的:,不好!冗余,操作异常,需要设计三个物理文件,图2.5和图2.6和图2.12,如果仓库和器件之间的联系是多对多的:,同样两个实体,如果赋予不同的语义则有不同的设计结果。也就是说我们在概念模型中讨论实体之间的联系类型直接影响着目标数据库的设计结果和设计质量。(实际设计中还需考虑具体情况参考“实际设计中,E-R模型向关系模型的转换规则”),返回,结论,E-R模型转换成关系模式,仓库(仓库号,城市,面积)职工(职工号,工资,仓库号) FK:仓库号器

14、件(器件号,器件名称)库存(仓库号,器件号,数量) FK :仓库号和器件号保管(职工号,器件号) FK :职工号和器件号供应商(供应商号,供应商名,地点)供应(供应商号,器件号) FK :供应商号和器件号订购单(订购单号,订购日期,供应商号,职工号) FK :供应商号和职工号订购(订购单号,器件号,行号,数量) FK :订购单号和器件号,其中有5个实体和7个联系,如下表:,完成“ WH1仓库P1器件的订货数量是多少 ”的查询步骤:,确定在WH1仓库工作的职工的职工号(职工文件),设为Eno;根据Eno查询该职工所经手的订购单号(订购单文件),设为Ono;根据Ono查询所订购的器件号及数量(订购

15、项目文件);查询完一张订购单后再接着查询同一职工经手的另一张订购单;一名职工经手的订购单查询完后,再查询同一仓库另一职工所经手的订购单。,完成相应查询的语句,SELECT SUM(数量) FROM 订购WHERE 器件号=”P1” AND 订购单号 IN (SELECT 订购单号FROM 订购单 WHERE 职工号IN (SELECT 职工号FROM 职工 WHERE 仓库号=”WH1”),多对多联系是一类比较复杂的联系,一般数据库管理系统并不直接支持这类联系,或者由于技术上的原因我们也不直接使用这类联系,我们总是把多对多联系转换为一对多联系。,几个相关问题:1.理解和转换多对多联系,多对多联

16、系,一个多对多的联系实际蕴涵了两个一对多的联系,仓库和器件之间的联系是多对多的,但是它们和“联系”库存之间的联系都是一对多的。,多对多联系蕴涵一对多联系,多对多联系转换为一对多联系,仓库(仓库号,城市,面积),库存( 数量),器件(器件号,器件名称),器件号,,仓库号,,所谓连接陷阱就是误认为不存在联系的两个实体间存在联系,从而通过这种“联系”获取错误的信息。 参考: “数据库设计中的误区连接陷阱”,2.连接陷阱,三.数据独立性与三层结构,什么是数据独立性如何获得数据独立性?,数据独立性,数据独立性是指应用程序与存储数据相互独立的特性。 具体说,就是当修改数据的组织方法和存储结构时,应用程序不

17、用修改的特性。,存储数据独立性,修改存储文件的组织方法和结构时应用程序不用修改的特性。,程序,存储子程序,用户程序/应用程序,分解,实现存储数据独立性,概念数据独立性,修改概念文件的结构时应用程序不用修改的特性。,程序,存储子程序,用户程序/应用程序,分解,概念级存储子程序,用户程序/应用程序,存储级存储子程序,实现概念数据独立性,实现概念数据独立性,CONCEPTUAL-ROUTINE是用来保证概念数据独立性的STORAGE-ROUTINE是用来保证存储数据独立性。,实现概念数据独立性,不管是概念文件,还是外部文件,它们都不真正还有数据,它们只是存取存储文件的结构或框架;概念文件时存储文件的

18、抽象,而外部文件是概念文件的部分抽取。,四.数据库的三层模式结构,课本P34,存储、概念和外部模式,定义存储模型的模式叫做存储模式;定义概念模型的模式叫概念模式,或简称模式;定义外部模型的模式叫外部模式,又称做子模式。,各级模式之间的关系,视图,表,存储文件,三层模式(外部模式、概念模式、存储模式)、两级映像(外部模式/概念模式,概念模式/存储模式)提供了两种独立性(概念数据独立性、存储数据独立性),传统模式说明实例,课本P36,存储数据库示例,存储模式说明,概念数据库,概念模式说明,外部数据库,是概念数据库的部分提取,外部模式说明,记住:,只有存储数据库是物理上真正存在的;概念数据库是存储数

19、据库的抽象;外部数据库是概念数据库的部分抽取。,记住:,概念模式带来了存储数据独立性;外部模式带来了概念数据独立性。,模式描述语言(DBDL),分类:存储DBDL概念DBDL外部DBDL用相应的DBDL书写的模式称作源模式。,数据库管理系统的总体结构,DBMS读取一条记录时发生的事件:,用户程序A向DBMS发出读一条记录的指令,这时用户程序要给出外部文件名和记录的关键字值;DBCS分析所接到的指令,访问对应的外部模式;DBCS完成外部模式到概念模式的转换,决定访问哪个(些)概念文件;接着由DBSS完成概念模式到存储模式的转换,并决定访问哪个(些)存储文件;DBSS调用存取方法,通过操作系统将读

20、取的记录送到系统缓冲区;用户程序从系统缓冲区得到所需记录和DBMS返回的状态信息;用户程序在工作区中使用所得到的记录。,信息结构和概念数据模型 三大数据模型 数据库的三层结构和数据独立性 数据库管理系统的结构,本章小结,指出下列实体的联系类型(1)省对省会的所属联系(2)父亲对孩子的亲生联系(3)供应商与工程项目的供货联系(4)教研室对教师的所属联系(5)图书与书店的联系,总结,数据的三个范畴2.1.1,数据模型,什么是数据模型,概念模型2.1.2,2.2,数据模型(2.3),概念模型向数据模型的转换(2.2涉及),(其中关系模型,第3章再细讲),本章内容,三层模式,三层模式(2.5.1),模式说明实例(2.5.2),二级映像(2.5.1),二种独立性(2.4),概念数据独立性,存储数据独立性,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号