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

上传人:txadgkn****dgknqu... 文档编号:241320279 上传时间:2024-06-17 格式:PPT 页数:106 大小:1.30MB
返回 下载 相关 举报
数据模型和三层模式数据库课件_第1页
第1页 / 共106页
数据模型和三层模式数据库课件_第2页
第2页 / 共106页
数据模型和三层模式数据库课件_第3页
第3页 / 共106页
点击查看更多>>
资源描述
第2章 数据模型和三层模式数据库第2章 数据模型和三层模式数据库1数据的三种范畴数据的三种范畴数据模型数据模型 数据模型的分类数据模型的分类 概念模型(概念型数据模型)概念模型(概念型数据模型)数据模型(组织型数据模型)数据模型(组织型数据模型)概念模型向数据模型的转换概念模型向数据模型的转换数据独立性与三层结构数据独立性与三层结构数据库管理系统的结构数据库管理系统的结构数据的三种范畴2一、数据的三种范畴一、数据的三种范畴思路:目的:描述数据和数据之间的联系方法:使用数据模型概念模型(概念层数据模型)与数据模型(组织层数据模型)一、数据的三种范畴现实信息电脑思路:目的:描述数据和数据之间3 客观存在并可以相互区分客观存在并可以相互区分的客观事物或抽象事件称为实的客观事物或抽象事件称为实体。体。客观存在的抽象事件订货、演出、足球赛等也是实体可以触及的客观对象仓库、器件、职工等是实体实体实体 客观存在并可以相互区分的客观事物或抽象事件称4身高年龄性别体重比赛时间、地点、参赛队特征特征身高比赛时间、地点、参赛队特征5 具有相同特征的一类实体的具有相同特征的一类实体的集合称之为实体集。集合称之为实体集。学生实体集学生实体集课程实体集课程实体集教师实体集教师实体集教室实体集教室实体集实体集实体集 具有相同特征的一类实体的集合称之为实体集。学6 用于区分实体的实体特征称为用于区分实体的实体特征称为标识特征。标识特征。标识特征标识特征 用于区分实体的实体特征称为标识特征。标识特征7现实世界的术语现实世界的术语特征实体实体集标识特征现实世界的术语8我们更熟悉的术语我们更熟悉的术语文件记录字段关键字我们更熟悉的术语9三种范畴使用的术语三种范畴使用的术语三种范畴使用的术语10弱实体弱实体在现实世界中还存在一类在现实世界中还存在一类“客体客体”,它自身,它自身不具不具有标识特征有标识特征,它需要借助于所依赖的实体来区分,它需要借助于所依赖的实体来区分一个个一个个“客体客体”,我们把这类,我们把这类“客体客体”称为弱实称为弱实体。(见第体。(见第10章)章)例例1:对订购单要管理订购单明细,订购单明细就对订购单要管理订购单明细,订购单明细就是弱实体是弱实体例例2:对球赛要管理上、下半场信息,半场就是弱对球赛要管理上、下半场信息,半场就是弱实体实体弱实体在现实世界中还存在一类“客体”,它自身不具有标识特征,11二、数据模型二、数据模型数据模型:数据模型:用来抽象、表示和处理现实世界中的数据和用来抽象、表示和处理现实世界中的数据和信息的。信息的。数据模型应满足三个条件:数据模型应满足三个条件:能比较真实地模拟现实世界;能比较真实地模拟现实世界;容易被人们理解;容易被人们理解;便于在计算机上实现。便于在计算机上实现。二、数据模型数据模型:121.数据模型的分类数据模型的分类概念数据模型(概念模概念数据模型(概念模型,概念层数据模型)型,概念层数据模型)数据模型(组织层数据数据模型(组织层数据模型)模型)从数据的语义视角来抽取模型。从数据的组织层次来描述数据。按用户的观点来对数据和信息进行建模。按计算机系统的观点对数据进行建模。主要用在数据库的设计阶段。主要用于DBMS的实现。与DBMS无关与DBMS有关数据库系统的核心和基础1.数据模型的分类概念数据模型(概念模型,概念层数据模型)数13现实世界客观事物的抽象过程现实世界客观事物的抽象过程 现现 实实机机 器器概念概念模型模型组织组织模型模型模型模型转换转换抽象抽象现实世界客观事物的抽象过程 现 实机 器概念组织模型转换142.概念数据模型概念数据模型概念模型实际上是现实世界到机器世界的一个概念模型实际上是现实世界到机器世界的一个中中间层次间层次。概念模型用于信息世界的建模,是现实世界到信概念模型用于信息世界的建模,是现实世界到信息世界的息世界的第一层抽象第一层抽象。是数据库设计人员和用户之间进行是数据库设计人员和用户之间进行交流的工具交流的工具。是面向用户、面向现实世界的数据模型,是是面向用户、面向现实世界的数据模型,是与与DBMSDBMS无关无关。概念模型的表示方法:概念模型的表示方法:实体实体-联系方法(联系方法(E-RE-R图),图),扩展扩展Bachman图图2.概念数据模型概念模型实际上是现实世界到机器世界的一个中间15实体实体-联系方法联系方法实体实体联系联系属性属性实体-联系方法实体16实体的表示方式实体的表示方式在在E-R图图中中用用矩矩形形框框表表示示实实体体,把把实实体体名名写写在在框框内内,比比如如仓仓库库实实体可以表示为:体可以表示为:仓库实体的表示方式在E-R图中用矩形框表示实体,把实体名写在框内17 实体之间的实体之间的联系用菱形框表联系用菱形框表示,框内写上联示,框内写上联系名,并用连线系名,并用连线与有关的实体相与有关的实体相连。连。联系名实体1实体2联系的表示方式联系的表示方式 实体之间的联系用菱形框表示,框内写上联系名18一对一联系一对一联系(1:1)一对多联系一对多联系(1:n)多对多联系多对多联系(m:n)联系的类型联系的类型一对一联系(1:1)联系的类型19 如如果果实实体体集集A与与实实体体集集B之之间间存存在在联联系系,并并且且对对于于实实体体集集A中中的的任任意意一一个个实实体体,实实体体集集B中中至至多多只只有有一一个个实实体体与与之之对对应应;反反之之亦亦然然,则则称称实实体体集集A到到实实体体集集B的的联联系系是是一一对对一一的,记为的,记为1:1。一对一的联系一对一的联系 如果实体集A与实体集B之间存在联系,并且对于实20实体:实体:车间,车间主任车间,车间主任语义:语义:一个车间只能有一名车间一个车间只能有一名车间主任主任一个职工也只能在一个车一个职工也只能在一个车间当主任间当主任联系:联系:命名为任职命名为任职任职车间车间主任11一对一联系的例子一对一联系的例子实体:车间,车间主任任职车间车间主任11一对一联系的例子21一对多的联系一对多的联系 如如果果实实体体集集A与与实实体体集集B之之间间存存在在联联系系,并并且且对对于于实实体体集集A中中的的一一个个实实体体,实实体体集集B中中可可以以有有多多个个实实体体与与之之对对应应;而而对对实实体体集集B中中的的任任意意一一个个实实体体,在在实实体体集集A中中至至多多只只有有一一个个实实体体与与之之对对应应,则则称称实实体体集集A到到实实体体集集B的的联系是一对多的,记为联系是一对多的,记为1:n。一对多的联系 如果实体集A与实体集B之间存在联系22工作仓库职工1n实体:实体:仓库,职工仓库,职工语义:语义:一个仓库可以有多名职工一个仓库可以有多名职工一个职工只能在一个仓库一个职工只能在一个仓库工作工作联系:联系:命名为工作命名为工作一对多联系的例子一对多联系的例子工作仓库职工1n实体:仓库,职工一对多联系的例子23多对多的联系多对多的联系 如如果果实实体体集集A与与实实体体集集B之之间间存存在在联联系系,并并且且对对于于实实体体集集A中中的的一一个个实实体体,实实体体集集B中中可可以以有有多多个个实实体体与与之之对对应应;反反之之亦亦然然,则则称称实实体体集集A到到实实体体集集B的的联联系系是是多多对对多多的的,记记为为m:n。多对多的联系 如果实体集A与实体集B之间存在联24仓库器件库存mn实体:实体:仓库,器件仓库,器件语义:语义:一个仓库可以存放多种器件一个仓库可以存放多种器件一种器件可以存放在多个仓一种器件可以存放在多个仓库库联系:联系:命名为库存命名为库存多对多联系的例子多对多联系的例子仓库器件库存mn实体:仓库,器件多对多联系的例子25仓库器件供应商订购mnp多个实体之间的联系多个实体之间的联系实体:实体:仓库、器件、仓库、器件、供应商供应商语义:语义:每每个仓库可以向个仓库可以向多多个个供应商发出订购,可供应商发出订购,可购买购买多多种器件;种器件;每每个供应商可向个供应商可向多多个个仓库供货,可供应仓库供货,可供应多多种器件;种器件;每每种器件可由种器件可由多多个供个供应商供应,可由应商供应,可由多多个个仓库购买。仓库购买。联系联系:命名为订购:命名为订购仓库器件供应商订购mnp多个实体之间的联系实体:仓库、器件、26仓库器件供应商库存业务供应多个实体之间的另外一种联系多个实体之间的另外一种联系仓库器件供应商库存业务供应多个实体之间的另外一种联系27两两种种联联系系方方式式的的区区别别仓库器件供应商库存业务供应仓库器件供应商订购两种联系方式的区别仓库器件供应商库存业务供应仓库器件供应商订28 实体的属性用椭圆实体的属性用椭圆框表示,框内写上属性框表示,框内写上属性名,并用连线连到相应名,并用连线连到相应实体。也可以直接将属实体。也可以直接将属性名写在实体旁边。性名写在实体旁边。仓库仓库仓库号仓库号城市城市面积面积仓库仓库仓库号仓库号城城 市市面面 积积属性的表示方式属性的表示方式 实体的属性用椭圆框表示,框内写上属性名,并用29 联系本身也有属联系本身也有属性,联系是通过性,联系是通过相关相关联的实体的有关属性联的实体的有关属性体现出来的。体现出来的。课堂练习:课堂练习:P41第第2题题联系的属性联系的属性仓库仓库职工职工工作工作仓库号仓库号城城 市市面面 积积职工号职工号工工 资资仓库号仓库号职工号职工号1n 联系本身也有属性,联系是通过相关联的实体的有30特殊的:依赖联系特殊的:依赖联系弱实体集的属性不足以构成主关键字,为了弱实体集的属性不足以构成主关键字,为了区分区分弱实体集弱实体集中的一个个实体,需要借助于中的一个个实体,需要借助于另一个实体集中的主关键字。这种被依赖的另一个实体集中的主关键字。这种被依赖的实体集也称作实体集也称作强实体集强实体集,在弱实体集和强实,在弱实体集和强实体集之间必然存在着一种联系,并把这种联体集之间必然存在着一种联系,并把这种联系称作系称作依赖联系依赖联系。(见第。(见第10章)章)特殊的:依赖联系弱实体集的属性不足以构成主关键字,为了区分弱31依赖联系的例子依赖联系的例子 依赖联系依赖联系都是一对多都是一对多的联系,弱实体集也只有作为一的联系,弱实体集也只有作为一对多联系的一部分才有意义。对多联系的一部分才有意义。依赖联系的例子 依赖联系都是一对多的联系,弱实32强制联系与非强制联系强制联系与非强制联系 实体之间的联系可以分为实体之间的联系可以分为强制联系强制联系和和非强非强制联系制联系。(见第。(见第10章)章)例:部门和职工之间的联系,如果规定职例:部门和职工之间的联系,如果规定职工任何时候都必须属于一个部门,则这种工任何时候都必须属于一个部门,则这种联系是强制联系;如果规定职工可以不属联系是强制联系;如果规定职工可以不属于任何部门则这种联系就是非强制联系。于任何部门则这种联系就是非强制联系。依赖联系都是强制联系。依赖联系都是强制联系。强制联系与非强制联系 实体之间的联系可以分为强制联系和非强制33 实体之间的联系类型并不取决实体之间的联系类型并不取决于实体本身,而是取决于现实世界于实体本身,而是取决于现实世界的管理方法,或者说取决于语义,的管理方法,或者说取决于语义,即同样两个实体,如果有即同样两个实体,如果有不同的语不同的语义义则可以得到则可以得到不同的联系类型不同的联系类型。注意:注意:实体之间的联系类型并不取决于实体本身,而是取34以仓库和器件两个实体之间的关联为例:以仓库和器件两个实体之间的关联为例:如果规定一个仓库只能存放一种器件,并且一种器件如果规定一个仓库只能存放一种器件,并且一种器件只能存放在一个仓库,这时仓库和器件之间的联系是只能存放在一个仓库,这时仓库和器件之间的联系是一对一的;一对一的;如果规定一个仓库可以存放多种器件,但是一种器件如果规定一个仓库可以存放多种器件,但是一种器件只能存放在一个仓库,这时仓库和器件之间的联系是只能存放在一个仓库,这时仓库和器件之间的联系是一对多的;一对多的;如果规定一个仓库可以存放多种器件,同时一种器件如果规定一个仓库可以存放多种器件,同时一种器件可以存放在多个仓库,这时仓库和器件之间的联系是可以存放在多个仓库,这时仓库和器件之间的联系是多对多的。多对多的。以仓库和器件两个实体之间的关联为例:如果规定一个仓库只能存放35概念数据模型概念数据模型实例研究实例研究(书(书2.2.4)建立库存订购数据库概念数据模型实例研究(书2.2.436库存业务?与库存业务有关的实体与库存业务有关的实体仓库器件职工库存业务?与库存业务有关的实体37库存业务的管理模式语义:库存业务的管理模式语义:在一个仓库可以存放多种器件,一种器在一个仓库可以存放多种器件,一种器件也可以存放在多个仓库中;件也可以存放在多个仓库中;一个仓库有多个职工,而一个职工只能一个仓库有多个职工,而一个职工只能在一个仓库工作;在一个仓库工作;一个职工可以保管一个仓库中的多种器一个职工可以保管一个仓库中的多种器件,由于一种器件可以存放在多个仓库件,由于一种器件可以存放在多个仓库中,当然可以由多名职工保管。中,当然可以由多名职工保管。库存业务的管理模式语义:在一个仓库可以存放多种器件,一种器件38在仓库和器件之间存在一个多对多的联系在仓库和器件之间存在一个多对多的联系 库存;库存;在仓库和职工之间存在一个一对多的联系在仓库和职工之间存在一个一对多的联系 工作;工作;在职工和器件之间存在一个多对多的联系在职工和器件之间存在一个多对多的联系 保管。保管。以上语义说明了:以上语义说明了:在仓库和器件之间存在一个多对多的联系以上语义说明了:39为此有库存业务的局部为此有库存业务的局部E-R图图为此有库存业务的局部E-R图40订购业务?与订购业务有关的实体与订购业务有关的实体职工器件供应商订购单订购业务?与订购业务有关的实体41订购业务管理模式语义:订购业务管理模式语义:一名职工可以经手多张订购单,但一张订购单一名职工可以经手多张订购单,但一张订购单只能由一名职工经手;只能由一名职工经手;一个供应商可以接受多张订购单,但一张订购一个供应商可以接受多张订购单,但一张订购单只能发给一个供应商;单只能发给一个供应商;一个供应商可以供应多种器件,每种器件也可一个供应商可以供应多种器件,每种器件也可以由多个供应商供应;以由多个供应商供应;一张订购单可以订购多种器件,对每种器件的一张订购单可以订购多种器件,对每种器件的订购也可以出现在多张订购单上。订购也可以出现在多张订购单上。订购业务管理模式语义:一名职工可以经手多张订购单,但一张订购42在职工和订购单之间存在一个一对多的在职工和订购单之间存在一个一对多的联系联系发出订购单;发出订购单;在供应商和订购单之间存在一个一对多在供应商和订购单之间存在一个一对多的联系的联系接收订购单;接收订购单;在供应商和器件之间存在一个多对多的在供应商和器件之间存在一个多对多的联系联系供应;供应;在订购单和器件之间存在一个多对多的在订购单和器件之间存在一个多对多的联系联系订购。订购。以上语义说明了:以上语义说明了:在职工和订购单之间存在一个一对多的联系发出订购单;以上语43为此有订购业务的局部为此有订购业务的局部E-R图图为此有订购业务的局部E-R图44库存库存订购业务整体订购业务整体E-R图图库存订购业务整体E-R图45 扩展扩展Bachman图是与图是与E-R图类似的信息结构和概念图类似的信息结构和概念模型描述工具,它的要点是:模型描述工具,它的要点是:用用矩矩形形框框表表示示实实体体或或文文件件,实实体体名名写写在在矩矩形形框框的的右右下下方;方;字字段段名名写写在在矩矩形形框框内内,关关键键字字标标以以下下划划线线,辅辅助助关关键键字标以虚下划线;字标以虚下划线;用用箭箭头头线线表表示示联联系系并并连连接接相相关关实实体体,箭箭头头线线始始于于父父文文件件的的连连接接字字段段(关关键键字字),终终于于子子文文件件的的连连接接字字段段(外外部关键字),联系类型标在箭头线旁。部关键字),联系类型标在箭头线旁。扩展扩展Bachman图图 扩展Bachman图是与E-R图类似的信息结46库存和订货业务的完整扩展库存和订货业务的完整扩展Bachman图图库存和订货业务的完整扩展Bachman图473.数据模型数据模型(传统的三大数据模型,面向对象模型)(传统的三大数据模型,面向对象模型)(书(书2.3节)节)课本课本P253.数据模型(传统的三大数据模型,面向对象模型)(书2.3节48 用树形结构来表示实体之间联系的模型称为层次模型。用树形结构来表示实体之间联系的模型称为层次模型。只能表示只能表示一对多一对多的联系。的联系。层次模型的典型代表是层次模型的典型代表是IMSInformation Management System(1)层次数据模型)层次数据模型 用树形结构来表示实体之间联系的模型称为层次模型。(49层次模型有以下两点限制层次模型有以下两点限制:有且仅有一个结点无父结点,这个结点即为树的有且仅有一个结点无父结点,这个结点即为树的根;根;其他结点有且仅有一个父结点其他结点有且仅有一个父结点层次模型有以下两点限制:有且仅有一个结点无父结点,这个结点即50层次结构实例层次结构实例层次结构实例51层次模型中用的术语层次模型中用的术语层次型片段(Segment)字段层次模型中用的术语层次型片段(Segment)字段型和值?52层次值实例层次值实例片段值字段值层次值层次值实例片段值字段值层次值53层次型不能表示多对多的联系层次型不能表示多对多的联系 把有把有两个父结两个父结点的非层点的非层次结构转次结构转换成两个换成两个层次型层次型层次型不能表示多对多的联系 把有两个父结点的非54 用网络结构来表示实体之间联系的数据模用网络结构来表示实体之间联系的数据模型称为网络数据模型。型称为网络数据模型。网络模型的典型代表是网络模型的典型代表是CODASYL Conference On DAta SYstem Language(2)网络数据模型)网络数据模型 用网络结构来表示实体之间联系的数据模型称为网55CODASYL用用系系描述联系描述联系系:命名了的联系。系:命名了的联系。SET:相互关联的数:相互关联的数据的集合。据的集合。系由一个父记录型和系由一个父记录型和一个或多个子记录型一个或多个子记录型构成。构成。系是一个二级树。系是一个二级树。CODASYL用系描述联系系:命名了的联系。系由一个父记录型56网络结构网络结构网络结构57理解系的概念理解系的概念理解系的概念58系值59 用关系(表格数据)表示实体和实体之用关系(表格数据)表示实体和实体之间联系的模型称为关系数据模型。间联系的模型称为关系数据模型。(3)关系数据模型)关系数据模型 用关系(表格数据)表示实体和实体之间联系的模60关系实例关系实例仓库(仓库(仓库号仓库号,城市,面积),城市,面积)关系模式关系模式关系实例仓库(仓库号,城市,面积)61关系数据库管理系统关系数据库管理系统SybaseOracleDB2MS SQL ServerFoxProAccess关系数据库管理系统Sybase624.概念模型向数据模型的转换概念模型向数据模型的转换?仓库器件4.概念模型向数据模型的转换63图2.8如果仓库和器件之间的联系是一如果仓库和器件之间的联系是一对一的:对一的:只需设计一个物理文件图2.8如果仓库和器件之间的联系是一对一64图2.5和图2.11如果仓库和器件之间的联系是一如果仓库和器件之间的联系是一对多的:对多的:不好!冗余,操作异常需要设计两个物理文件图2.5和图2.11如果仓库和器件之间的65图2.5和图2.6和图2.12如果仓库和器件之间的联系是多如果仓库和器件之间的联系是多对多的:对多的:需要设计三个物理文件图2.5和图2.6和图2.12如果仓库和66 同样两个实体,如果赋予不同的语义则有同样两个实体,如果赋予不同的语义则有不同的设计结果。也就是说我们在概念模型中不同的设计结果。也就是说我们在概念模型中讨论实体之间的联系类型直接影响着目标数据讨论实体之间的联系类型直接影响着目标数据库的设计结果和设计质量。库的设计结果和设计质量。(实际设计中还需考虑具体情况(实际设计中还需考虑具体情况参考参考“实际设计中,实际设计中,E-R模型向关系模型的转换规则模型向关系模型的转换规则”)返回结论结论 同样两个实体,如果赋予不同的语义则有不同的设67E-R模型转换成关系模式模型转换成关系模式E-R模型转换成关系模式68仓库(仓库(仓库号仓库号,城市,面积),城市,面积)职工(职工(职工号职工号,工资,仓库号),工资,仓库号)FK:仓库号:仓库号器件(器件(器件号器件号,器件名称),器件名称)库存(库存(仓库号,器件号仓库号,器件号,数量),数量)FK:仓库号和器件号:仓库号和器件号保管(保管(职工号,器件号职工号,器件号)FK:职工号和器件号:职工号和器件号供应商(供应商(供应商号供应商号,供应商名,地点),供应商名,地点)供应(供应(供应商号,器件号供应商号,器件号)FK:供应商号和器件号:供应商号和器件号订购单订购单(订购单号订购单号,订购日期订购日期,供应商号供应商号,职工号职工号)FK:供应商号和职工号供应商号和职工号订购(订购(订购单号,器件号,行号订购单号,器件号,行号,数量),数量)FK:订购单号和器件号:订购单号和器件号仓库(仓库号,城市,面积)69其中有其中有5个实体和个实体和7个联系,如下表:个联系,如下表:其中有5个实体和7个联系,如下表:70 完成完成“WH1“WH1仓库仓库P1P1器件的订货数量是多器件的订货数量是多少少”的查询步骤:的查询步骤:确确定定在在WH1仓仓库库工工作作的的职职工工的的职职工工号号(职职工工文文件件),设为设为Eno;根根据据Eno查查询询该该职职工工所所经经手手的的订订购购单单号号(订订购购单单文文件件),设为,设为Ono;根据根据Ono查询所订购的器件号及数量(订购项目文件);查询所订购的器件号及数量(订购项目文件);查查询询完完一一张张订订购购单单后后再再接接着着查查询询同同一一职职工工经经手手的的另另一一张订购单;张订购单;一一名名职职工工经经手手的的订订购购单单查查询询完完后后,再再查查询询同同一一仓仓库库另另一职工所经手的订购单。一职工所经手的订购单。完成“WH1仓库P1器件的订货数量是多少”的71完成相应查询的语句完成相应查询的语句SELECT SUM(数量数量)FROM 订购订购WHERE 器件号器件号=”P1”AND 订购单号订购单号 IN (SELECT 订购单号订购单号FROM 订购单订购单 WHERE 职工号职工号IN (SELECT 职工号职工号FROM 职工职工 WHERE 仓库号仓库号=”WH1”)完成相应查询的语句SELECT SUM(数量)FROM72 多对多联系是一类比较复杂的联多对多联系是一类比较复杂的联系,一般数据库管理系统并不直接支系,一般数据库管理系统并不直接支持这类联系,或者由于技术上的原因持这类联系,或者由于技术上的原因我们也不直接使用这类联系,我们总我们也不直接使用这类联系,我们总是把多对多联系转换为一对多联系。是把多对多联系转换为一对多联系。几个相关问题:几个相关问题:1.理解和转换多理解和转换多对多联系对多联系 多对多联系是一类比较复杂的联系,一般数据库管73面积面积500450200300城市城市北京北京上海上海广州广州重庆重庆仓库号仓库号WH1WH2WH3WH4120200180100140150180200100器器件件号号器器件件名名称称显显示示卡卡声声卡卡解解压压卡卡散散热热风风扇扇P4P3P2P1多对多联系多对多联系面积500450200300城市北京上海广州重庆仓库号WH174 一个多对多的联系实际蕴涵一个多对多的联系实际蕴涵了两个一对多的联系,仓库和器了两个一对多的联系,仓库和器件之间的联系是多对多的,但是件之间的联系是多对多的,但是它们和它们和“联系联系”库存之间的联系库存之间的联系都是一对多的。都是一对多的。多对多联系蕴涵一对多联系多对多联系蕴涵一对多联系 一个多对多的联系实际蕴涵了两个一对多的联系,75多对多联系转换为一对多联系多对多联系转换为一对多联系仓库号仓库号城城 市市面面 积积仓仓 库库器器 件件库库 存存W-IP-I 器件号器件号器件名称器件名称仓库号仓库号器件号器件号数数 量量11mn仓库号仓库号城城 市市面面 积积仓库号仓库号器件号器件号数数 量量器器 件件仓仓 库库库库 存存mn器件号器件号器件名称器件名称多对多联系转换为一对多联系仓库号仓 库器 件库 存W-76仓库号仓库号城城 市市面面 积积仓仓 库库器器 件件库库 存存W-IP-I 器件号器件号器件名称器件名称仓库号仓库号器件号器件号数数 量量11mn仓库(仓库号仓库(仓库号,城市城市,面积)面积)库存(库存(数量)数量)器件(器件号器件(器件号,器件名称)器件名称)器件号,器件号,仓库号,仓库号,仓库号仓 库器 件库 存W-IP-I 器件号仓库号1177 所谓连接陷阱就是误认为不存在联系所谓连接陷阱就是误认为不存在联系的两个实体间存在联系,从而通过这种的两个实体间存在联系,从而通过这种“联系联系”获取错误的信息。获取错误的信息。参考:参考:“数据库设计中的误区数据库设计中的误区连接陷阱连接陷阱”2.连接陷阱连接陷阱 所谓连接陷阱就是误认为不存在联系的两个实体间78三三.数据独立性与三层结构数据独立性与三层结构什么是数据独立性什么是数据独立性如何获得数据独立性?如何获得数据独立性?三.数据独立性与三层结构什么是数据独立性79数据独立性数据独立性 数据独立性是指应用程序与存储数据相互数据独立性是指应用程序与存储数据相互独立的特性。独立的特性。具体说,就是当修改数据的组织方法和存具体说,就是当修改数据的组织方法和存储结构时,应用程序不用修改的特性。储结构时,应用程序不用修改的特性。数据独立性 数据独立性是指应用程序与存储数据相互独立的特性。80存储数据独立性存储数据独立性 修改修改存储文件存储文件的组织方法和结构时应用的组织方法和结构时应用程序不用修改的特性。程序不用修改的特性。程序程序存储子程序存储子程序用户程序用户程序/应用程序应用程序分解分解存储数据独立性 修改存储文件的组织方法和结构81实现存储数据独立性实现存储数据独立性存储级的存储子程序存储级的存储子程序实现存储数据独立性存储级的存储子程序82概念数据独立性概念数据独立性 修改概念文件的结构时应用程序不用修修改概念文件的结构时应用程序不用修改的特性。改的特性。程序程序存储子程序存储子程序用户程序用户程序/应用程序应用程序分解分解概念级存储子程序概念级存储子程序用户程序用户程序/应用程序应用程序分解分解存储级存储子程序存储级存储子程序概念数据独立性 修改概念文件的结构时应用程序83实现概念数据独立性实现概念数据独立性存储级的存储子程序存储级的存储子程序概念级的存储子程序概念级的存储子程序实现概念数据独立性存储级的存储子程序概念级的存储子程序84实现概念数据独立性实现概念数据独立性CONCEPTUAL-ROUTINE是用来保证概念数据是用来保证概念数据独立性的独立性的STORAGE-ROUTINE是用来保证存储数据独立是用来保证存储数据独立性。性。实现概念数据独立性CONCEPTUAL-ROUTINE是用来85实现概念数据独立性实现概念数据独立性不管是概念文件,还是外部文件,它们都不管是概念文件,还是外部文件,它们都不真正还有数据,它们只是存取存储文件不真正还有数据,它们只是存取存储文件的结构或框架;概念文件时存储文件的抽的结构或框架;概念文件时存储文件的抽象,而外部文件是概念文件的部分抽取。象,而外部文件是概念文件的部分抽取。实现概念数据独立性不管是概念文件,还是外部文件,它们都不真正86四四.数据库的三层模式结构数据库的三层模式结构视图表物理文件课本课本P34四.数据库的三层模式结构视图表物理文件课本P3487存储、概念和外部模式存储、概念和外部模式定义存储模型的模式叫做定义存储模型的模式叫做存储模式存储模式;定义概念模型的模式叫定义概念模型的模式叫概念模式概念模式,或简,或简称模式;称模式;定义外部模型的模式叫定义外部模型的模式叫外部模式外部模式,又称,又称做子模式。做子模式。存储、概念和外部模式定义存储模型的模式叫做存储模式;88各级模式之间的关系各级模式之间的关系视图视图表表存储文件存储文件各级模式之间的关系视图表存储文件89三层模式三层模式(外部模式、概念模式、存储模式)、(外部模式、概念模式、存储模式)、两级映像两级映像(外部模式(外部模式/概念模式,概念模式概念模式,概念模式/存储模存储模式)提供了式)提供了两种独立性两种独立性(概念数据独立性、存储(概念数据独立性、存储数据独立性)数据独立性)三层模式(外部模式、概念模式、存储模式)、90课本课本P36传统模式说明实例课本P3691存储数据库示例存储数据库示例存储数据库示例92存储模式说明93概念数据库概念数据库概念数据库94概念模式说明概念模式说明概念模式说明95外部数据库外部数据库是概念数据库的部分提取是概念数据库的部分提取外部数据库是概念数据库的部分提取96外部模式说明外部模式说明外部模式说明97记住:记住:只有存储数据库是物理上真正存在的;只有存储数据库是物理上真正存在的;概念数据库是存储数据库的抽象;概念数据库是存储数据库的抽象;外部数据库是概念数据库的部分抽取。外部数据库是概念数据库的部分抽取。记住:只有存储数据库是物理上真正存在的;98记住:记住:概念模式带来了存储数据独立性;概念模式带来了存储数据独立性;外部模式带来了概念数据独立性。外部模式带来了概念数据独立性。记住:概念模式带来了存储数据独立性;99模式描述语言(模式描述语言(DBDL)分类:分类:存储存储DBDL概念概念DBDL外部外部DBDL用相应的用相应的DBDL书写的模式称作源模式。书写的模式称作源模式。模式描述语言(DBDL)分类:100数据库管理系统的总体结构数据库管理系统的总体结构数据库管理系统的总体结构101DBMS读取一条记录时发生的事件:读取一条记录时发生的事件:用户程序用户程序A向向DBMS发出读一条记录的指令,这时用户发出读一条记录的指令,这时用户程序要给出外部文件名和记录的关键字值;程序要给出外部文件名和记录的关键字值;DBCS分析所接到的指令,访问对应的外部模式;分析所接到的指令,访问对应的外部模式;DBCS完成外部模式到概念模式的转换,决定访问哪完成外部模式到概念模式的转换,决定访问哪个(些)概念文件;个(些)概念文件;接着由接着由DBSS完成概念模式到存储模式的转换,并决定完成概念模式到存储模式的转换,并决定访问哪个(些)存储文件;访问哪个(些)存储文件;DBSS调用存取方法,通过操作系统将读取的记录送到调用存取方法,通过操作系统将读取的记录送到系统缓冲区;系统缓冲区;用户程序从系统缓冲区得到所需记录和用户程序从系统缓冲区得到所需记录和DBMS返回的返回的状态信息;状态信息;用户程序在工作区中使用所得到的记录。用户程序在工作区中使用所得到的记录。DBMS读取一条记录时发生的事件:用户程序A向DBMS发出读102信息结构和概念数据模型信息结构和概念数据模型 三大数据模型三大数据模型 数据库的三层结构和数据独立性数据库的三层结构和数据独立性 数据库管理系统的结构数据库管理系统的结构本章小结本章小结信息结构和概念数据模型 本章小结103指出下列实体的联系类型指出下列实体的联系类型(1)省对省会的所属联系)省对省会的所属联系(2)父亲对孩子的亲生联系)父亲对孩子的亲生联系(3)供应商与工程项目的供货联系)供应商与工程项目的供货联系(4)教研室对教师的所属联系)教研室对教师的所属联系(5)图书与书店的联系)图书与书店的联系指出下列实体的联系类型104总结总结数据的三个范畴数据的三个范畴2.1.1数据模型数据模型什么是数据模型什么是数据模型概念模型概念模型2.1.2,2.2数据模型数据模型(2.3)概念模型向数据模型的转换(概念模型向数据模型的转换(2.2涉及)涉及)(其中关系模(其中关系模型,第型,第3章再章再细讲)细讲)总结数据的三个范畴2.1.1数据模型什么是数据模型概念模型2105本章内容本章内容三层模式三层模式三层模式三层模式(2.5.1)模式说明实例模式说明实例(2.5.2)二级映像二级映像(2.5.1)二种独立性二种独立性(2.4)概念数据独立性概念数据独立性存储数据独立性存储数据独立性本章内容三层模式三层模式(2.5.1)模式说明实例(2.5.106
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 办公文档 > 教学培训


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!