数据模型和三层模式数据库_第1页
数据模型和三层模式数据库_第2页
数据模型和三层模式数据库_第3页
数据模型和三层模式数据库_第4页
数据模型和三层模式数据库_第5页
已阅读5页,还剩101页未读 继续免费阅读

下载本文档

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

文档简介

数据模型和三层模式数据库第1页,共106页,2023年,2月20日,星期六数据的三种范畴数据模型数据模型的分类概念模型(概念型数据模型)数据模型(组织型数据模型)概念模型向数据模型的转换数据独立性与三层结构数据库管理系统的结构第2页,共106页,2023年,2月20日,星期六一、数据的三种范畴现实信息电脑思路:目的:描述数据和数据之间的联系方法:使用数据模型——概念模型(概念层数据模型)与数据模型(组织层数据模型)第3页,共106页,2023年,2月20日,星期六客观存在并可以相互区分的客观事物或抽象事件称为实体。客观存在的抽象事件订货、演出、足球赛……等也是实体可以触及的客观对象仓库、器件、职工……等是实体实体第4页,共106页,2023年,2月20日,星期六身高年龄性别体重……比赛时间、地点、参赛队……特征第5页,共106页,2023年,2月20日,星期六具有相同特征的一类实体的集合称之为实体集。学生实体集课程实体集教师实体集教室实体集实体集第6页,共106页,2023年,2月20日,星期六用于区分实体的实体特征称为标识特征。标识特征第7页,共106页,2023年,2月20日,星期六特征实体实体集标识特征现实世界的术语第8页,共106页,2023年,2月20日,星期六文件记录字段关键字我们更熟悉的术语第9页,共106页,2023年,2月20日,星期六三种范畴使用的术语第10页,共106页,2023年,2月20日,星期六弱实体在现实世界中还存在一类“客体”,它自身不具有标识特征,它需要借助于所依赖的实体来区分一个个“客体”,我们把这类“客体”称为弱实体。(见第10章)例1:对订购单要管理订购单明细,订购单明细就是弱实体例2:对球赛要管理上、下半场信息,半场就是弱实体第11页,共106页,2023年,2月20日,星期六二、数据模型数据模型:用来抽象、表示和处理现实世界中的数据和信息的。数据模型应满足三个条件:能比较真实地模拟现实世界;容易被人们理解;便于在计算机上实现。第12页,共106页,2023年,2月20日,星期六1.数据模型的分类概念数据模型(概念模型,概念层数据模型)数据模型(组织层数据模型)从数据的语义视角来抽取模型。从数据的组织层次来描述数据。按用户的观点来对数据和信息进行建模。按计算机系统的观点对数据进行建模。主要用在数据库的设计阶段。主要用于DBMS的实现。与DBMS无关与DBMS有关数据库系统的核心和基础第13页,共106页,2023年,2月20日,星期六现实世界客观事物的抽象过程现实机器概念模型组织模型模型转换抽象第14页,共106页,2023年,2月20日,星期六2.概念数据模型概念模型实际上是现实世界到机器世界的一个中间层次。

概念模型用于信息世界的建模,是现实世界到信息世界的第一层抽象。是数据库设计人员和用户之间进行交流的工具。是面向用户、面向现实世界的数据模型,是与DBMS无关。概念模型的表示方法:实体-联系方法(E-R图),扩展Bachman图第15页,共106页,2023年,2月20日,星期六实体-联系方法实体联系属性第16页,共106页,2023年,2月20日,星期六实体的表示方式在E-R图中用矩形框表示实体,把实体名写在框内,比如仓库实体可以表示为:仓库第17页,共106页,2023年,2月20日,星期六

实体之间的联系用菱形框表示,框内写上联系名,并用连线与有关的实体相连。联系名实体1实体2联系的表示方式第18页,共106页,2023年,2月20日,星期六一对一联系(1:1)一对多联系(1:n)多对多联系(m:n)联系的类型第19页,共106页,2023年,2月20日,星期六如果实体集A与实体集B之间存在联系,并且对于实体集A中的任意一个实体,实体集B中至多只有一个实体与之对应;反之亦然,则称实体集A到实体集B的联系是一对一的,记为1:1。一对一的联系第20页,共106页,2023年,2月20日,星期六实体:车间,车间主任语义:一个车间只能有一名车间主任一个职工也只能在一个车间当主任联系:命名为任职任职车间车间主任11一对一联系的例子第21页,共106页,2023年,2月20日,星期六一对多的联系如果实体集A与实体集B之间存在联系,并且对于实体集A中的一个实体,实体集B中可以有多个实体与之对应;而对实体集B中的任意一个实体,在实体集A中至多只有一个实体与之对应,则称实体集A到实体集B的联系是一对多的,记为1:n。第22页,共106页,2023年,2月20日,星期六工作仓库职工1n实体:仓库,职工语义:一个仓库可以有多名职工一个职工只能在一个仓库工作联系:命名为工作一对多联系的例子第23页,共106页,2023年,2月20日,星期六多对多的联系

如果实体集A与实体集B之间存在联系,并且对于实体集A中的一个实体,实体集B中可以有多个实体与之对应;反之亦然,则称实体集A到实体集B的联系是多对多的,记为m:n。第24页,共106页,2023年,2月20日,星期六仓库器件库存mn实体:仓库,器件语义:一个仓库可以存放多种器件一种器件可以存放在多个仓库联系:命名为库存多对多联系的例子第25页,共106页,2023年,2月20日,星期六仓库器件供应商订购mnp多个实体之间的联系实体:仓库、器件、供应商语义:每个仓库可以向多个供应商发出订购,可购买多种器件;每个供应商可向多个仓库供货,可供应多种器件;每种器件可由多个供应商供应,可由多个仓库购买。联系:命名为订购第26页,共106页,2023年,2月20日,星期六仓库器件供应商库存业务供应多个实体之间的另外一种联系第27页,共106页,2023年,2月20日,星期六两种联系方式的区别仓库器件供应商库存业务供应仓库器件供应商订购第28页,共106页,2023年,2月20日,星期六实体的属性用椭圆框表示,框内写上属性名,并用连线连到相应实体。也可以直接将属性名写在实体旁边。仓库仓库号城市面积仓库仓库号城市面积属性的表示方式第29页,共106页,2023年,2月20日,星期六联系本身也有属性,联系是通过相关联的实体的有关属性体现出来的。课堂练习:P41第2题联系的属性仓库职工工作仓库号城市面积职工号工资仓库号职工号1n第30页,共106页,2023年,2月20日,星期六特殊的:依赖联系弱实体集的属性不足以构成主关键字,为了区分弱实体集中的一个个实体,需要借助于另一个实体集中的主关键字。这种被依赖的实体集也称作强实体集,在弱实体集和强实体集之间必然存在着一种联系,并把这种联系称作依赖联系。(见第10章)第31页,共106页,2023年,2月20日,星期六依赖联系的例子依赖联系都是一对多的联系,弱实体集也只有作为一对多联系的一部分才有意义。第32页,共106页,2023年,2月20日,星期六强制联系与非强制联系实体之间的联系可以分为强制联系和非强制联系。(见第10章)例:部门和职工之间的联系,如果规定职工任何时候都必须属于一个部门,则这种联系是强制联系;如果规定职工可以不属于任何部门则这种联系就是非强制联系。依赖联系都是强制联系。第33页,共106页,2023年,2月20日,星期六实体之间的联系类型并不取决于实体本身,而是取决于现实世界的管理方法,或者说取决于语义,即同样两个实体,如果有不同的语义则可以得到不同的联系类型。注意:第34页,共106页,2023年,2月20日,星期六以仓库和器件两个实体之间的关联为例:如果规定一个仓库只能存放一种器件,并且一种器件只能存放在一个仓库,这时仓库和器件之间的联系是一对一的;如果规定一个仓库可以存放多种器件,但是一种器件只能存放在一个仓库,这时仓库和器件之间的联系是一对多的;如果规定一个仓库可以存放多种器件,同时一种器件可以存放在多个仓库,这时仓库和器件之间的联系是多对多的。第35页,共106页,2023年,2月20日,星期六建立库存—订购数据库概念数据模型——实例研究

(书2.2.4)第36页,共106页,2023年,2月20日,星期六仓库器件职工库存业务?与库存业务有关的实体第37页,共106页,2023年,2月20日,星期六库存业务的管理模式语义:在一个仓库可以存放多种器件,一种器件也可以存放在多个仓库中;一个仓库有多个职工,而一个职工只能在一个仓库工作;一个职工可以保管一个仓库中的多种器件,由于一种器件可以存放在多个仓库中,当然可以由多名职工保管。第38页,共106页,2023年,2月20日,星期六在仓库和器件之间存在一个多对多的联系

——库存;在仓库和职工之间存在一个一对多的联系

——工作;在职工和器件之间存在一个多对多的联系

——保管。以上语义说明了:第39页,共106页,2023年,2月20日,星期六为此有库存业务的局部E-R图第40页,共106页,2023年,2月20日,星期六职工器件供应商订购单订购业务?与订购业务有关的实体第41页,共106页,2023年,2月20日,星期六订购业务管理模式语义:一名职工可以经手多张订购单,但一张订购单只能由一名职工经手;一个供应商可以接受多张订购单,但一张订购单只能发给一个供应商;一个供应商可以供应多种器件,每种器件也可以由多个供应商供应;一张订购单可以订购多种器件,对每种器件的订购也可以出现在多张订购单上。第42页,共106页,2023年,2月20日,星期六在职工和订购单之间存在一个一对多的联系——发出订购单;在供应商和订购单之间存在一个一对多的联系——接收订购单;在供应商和器件之间存在一个多对多的联系——供应;在订购单和器件之间存在一个多对多的联系——订购。以上语义说明了:第43页,共106页,2023年,2月20日,星期六为此有订购业务的局部E-R图第44页,共106页,2023年,2月20日,星期六库存—订购业务整体E-R图第45页,共106页,2023年,2月20日,星期六扩展Bachman图是与E-R图类似的信息结构和概念模型描述工具,它的要点是:用矩形框表示实体或文件,实体名写在矩形框的右下方;字段名写在矩形框内,关键字标以下划线,辅助关键字标以虚下划线;用箭头线表示联系并连接相关实体,箭头线始于父文件的连接字段(关键字),终于子文件的连接字段(外部关键字),联系类型标在箭头线旁。扩展Bachman图第46页,共106页,2023年,2月20日,星期六库存和订货业务的完整扩展Bachman图第47页,共106页,2023年,2月20日,星期六3.数据模型(传统的三大数据模型,面向对象模型)(书2.3节)层次模型网络模型关系模型课本P25第48页,共106页,2023年,2月20日,星期六

用树形结构来表示实体之间联系的模型称为层次模型。只能表示一对多的联系。层次模型的典型代表是IMS——InformationManagementSystem(1)层次数据模型第49页,共106页,2023年,2月20日,星期六层次模型有以下两点限制:有且仅有一个结点无父结点,这个结点即为树的根;其他结点有且仅有一个父结点第50页,共106页,2023年,2月20日,星期六层次结构实例第51页,共106页,2023年,2月20日,星期六层次模型中用的术语层次型片段(Segment)字段型和值?第52页,共106页,2023年,2月20日,星期六层次值实例片段值字段值层次值第53页,共106页,2023年,2月20日,星期六层次型不能表示多对多的联系把有两个父结点的非层次结构转换成两个层次型第54页,共106页,2023年,2月20日,星期六用网络结构来表示实体之间联系的数据模型称为网络数据模型。网络模型的典型代表是CODASYL——ConferenceOnDAtaSYstemLanguage(2)网络数据模型第55页,共106页,2023年,2月20日,星期六CODASYL用系描述联系系:命名了的联系。SET:相互关联的数据的集合。系由一个父记录型和一个或多个子记录型构成。系是一个二级树。第56页,共106页,2023年,2月20日,星期六网络结构第57页,共106页,2023年,2月20日,星期六理解系的概念第58页,共106页,2023年,2月20日,星期六系值第59页,共106页,2023年,2月20日,星期六用关系(表格数据)表示实体和实体之间联系的模型称为关系数据模型。(3)关系数据模型第60页,共106页,2023年,2月20日,星期六关系实例仓库(仓库号,城市,面积)关系模式第61页,共106页,2023年,2月20日,星期六关系数据库管理系统SybaseOracleDB2MSSQLServerFoxProAccess…第62页,共106页,2023年,2月20日,星期六?仓库器件4.概念模型向数据模型的转换第63页,共106页,2023年,2月20日,星期六只需设计一个物理文件图2.8如果仓库和器件之间的联系是一对一的:第64页,共106页,2023年,2月20日,星期六需要设计两个物理文件图2.5和图2.11如果仓库和器件之间的联系是一对多的:不好!冗余,操作异常第65页,共106页,2023年,2月20日,星期六需要设计三个物理文件图2.5和图2.6和图2.12如果仓库和器件之间的联系是多对多的:第66页,共106页,2023年,2月20日,星期六同样两个实体,如果赋予不同的语义则有不同的设计结果。也就是说我们在概念模型中讨论实体之间的联系类型直接影响着目标数据库的设计结果和设计质量。(实际设计中还需考虑具体情况——参考“实际设计中,E-R模型向关系模型的转换规则”)返回结论第67页,共106页,2023年,2月20日,星期六E-R模型转换成关系模式第68页,共106页,2023年,2月20日,星期六仓库(仓库号,城市,面积)职工(职工号,工资,仓库号)FK:仓库号器件(器件号,器件名称)库存(仓库号,器件号,数量)FK:仓库号和器件号保管(职工号,器件号)FK:职工号和器件号供应商(供应商号,供应商名,地点)供应(供应商号,器件号)FK:供应商号和器件号订购单(订购单号,订购日期,供应商号,职工号)FK:供应商号和职工号订购(订购单号,器件号,行号,数量)FK:订购单号和器件号第69页,共106页,2023年,2月20日,星期六其中有5个实体和7个联系,如下表:第70页,共106页,2023年,2月20日,星期六

完成“WH1仓库P1器件的订货数量是多少”的查询步骤:确定在WH1仓库工作的职工的职工号(职工文件),设为Eno;根据Eno查询该职工所经手的订购单号(订购单文件),设为Ono;根据Ono查询所订购的器件号及数量(订购项目文件);查询完一张订购单后再接着查询同一职工经手的另一张订购单;一名职工经手的订购单查询完后,再查询同一仓库另一职工所经手的订购单。第71页,共106页,2023年,2月20日,星期六完成相应查询的语句SELECTSUM(数量)FROM订购WHERE器件号=”P1”AND订购单号IN(SELECT订购单号FROM订购单

WHERE职工号IN(SELECT职工号FROM职工

WHERE仓库号=”WH1”))第72页,共106页,2023年,2月20日,星期六多对多联系是一类比较复杂的联系,一般数据库管理系统并不直接支持这类联系,或者由于技术上的原因我们也不直接使用这类联系,我们总是把多对多联系转换为一对多联系。几个相关问题:1.理解和转换多对多联系第73页,共106页,2023年,2月20日,星期六面积500450200300城市北京上海广州重庆仓库号WH1WH2WH3WH4120200180100140150180200100———————器件号器件名称显示卡声卡解压卡散热风扇P4P3P2P1多对多联系第74页,共106页,2023年,2月20日,星期六一个多对多的联系实际蕴涵了两个一对多的联系,仓库和器件之间的联系是多对多的,但是它们和“联系”库存之间的联系都是一对多的。多对多联系蕴涵一对多联系第75页,共106页,2023年,2月20日,星期六多对多联系转换为一对多联系仓库号城市面积仓库器件库存W-IP-I

器件号器件名称仓库号器件号数量11mn仓库号城市面积仓库号器件号数量器件仓库库存mn器件号器件名称第76页,共106页,2023年,2月20日,星期六仓库号城市面积仓库器件库存W-IP-I

器件号器件名称仓库号器件号数量11mn仓库(仓库号,城市,面积)库存(数量)器件(器件号,器件名称)器件号,仓库号,第77页,共106页,2023年,2月20日,星期六所谓连接陷阱就是误认为不存在联系的两个实体间存在联系,从而通过这种“联系”获取错误的信息。参考:“数据库设计中的误区——连接陷阱”2.连接陷阱第78页,共106页,2023年,2月20日,星期六三.数据独立性与三层结构什么是数据独立性如何获得数据独立性?第79页,共106页,2023年,2月20日,星期六数据独立性数据独立性是指应用程序与存储数据相互独立的特性。

具体说,就是当修改数据的组织方法和存储结构时,应用程序不用修改的特性。第80页,共106页,2023年,2月20日,星期六存储数据独立性修改存储文件的组织方法和结构时应用程序不用修改的特性。程序存储子程序用户程序/应用程序分解第81页,共106页,2023年,2月20日,星期六实现存储数据独立性存储级的存储子程序第82页,共106页,2023年,2月20日,星期六概念数据独立性修改概念文件的结构时应用程序不用修改的特性。程序存储子程序用户程序/应用程序分解概念级存储子程序用户程序/应用程序分解存储级存储子程序第83页,共106页,2023年,2月20日,星期六实现概念数据独立性存储级的存储子程序概念级的存储子程序第84页,共106页,2023年,2月20日,星期六实现概念数据独立性CONCEPTUAL-ROUTINE是用来保证概念数据独立性的STORAGE-ROUTINE是用来保证存储数据独立性。第85页,共106页,2023年,2月20日,星期六实现概念数据独立性不管是概念文件,还是外部文件,它们都不真正还有数据,它们只是存取存储文件的结构或框架;概念文件时存储文件的抽象,而外部文件是概念文件的部分抽取。第86页,共106页,2023年,2月20日,星期六四.数据库的三层模式结构视图表物理文件课本P34第87页,共106页,2023年,2月20日,星期六存储、概念和外部模式定义存储模型的模式叫做存储模式;定义概念模型的模式叫概念模式,或简称模式;定义外部模型的模式叫外部模式,又称做子模式。第88页,共106页,2023年,2月20日,星期六各级模式之间的关系视图表存储文件第89页,共106页,2023年,2月20日,星期六三层模式(外部模式、概念模式、存储模式)、两级映像(外部模式/概念模式,概念模式/存储模式)提供了两种独立性(概念数据独立性、存储数据独立性)第90页,共106页,2023年,2月20日,星期六传统模式说明实例课本P36第91页,共106页,2023年,2月20日,星期六存储数据库示例第92页,共106页,2023年,2月20日,星期六存储模式说明第93页,共106页,2023年,2月20日,星期六概念数据库第94页,共106页,2023年,2月20日,星期六概念模式说明第95页,共106页,2023年,2月20日,星期六外部数据库是概念数据

温馨提示

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

评论

0/150

提交评论