数据库第二章_第1页
数据库第二章_第2页
数据库第二章_第3页
数据库第二章_第4页
数据库第二章_第5页
已阅读5页,还剩49页未读 继续免费阅读

下载本文档

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

文档简介

第二章数据模型本章要点2.1数据建模的过程2.2概念模型2.3数据模型的组成要素2.4结构化数据模型2.5非结构化数据模型2.1数据建模的过程数据模型(DataModel)是对现实世界中对象(事物)的数据抽象包含对象的数据特征和功能操作是信息系统建设的基础数据建模应满足三方面要求能比较真实地模拟现实世界容易为人所理解便于在计算机上实现数据模型分成三类(三个抽象层次):(1)概念模型

用某种语言或符号描述对象及其之间的联系,如E-R图,UML等独立于计算机系统和数据库管理系统便于数据库设计人员与用户间交流(2)逻辑模型用严格的形式化定义描述对象及其之间的联系,如关系模型面向具体的计算机系统和数据库管理系统便于计算机实现(3)物理模型描述数据库的物理结构,如存储方式、索引结构等面向具体的计算机系统和数据库管理系统由数据库管理系统实现概念模型逻辑模型物理模型数据建模过程2.2概念模型概念模型是数据库设计的第一步是数据库设计人员和用户之间进行交流的载体好的概念模型应简单清晰,易于理解,语义表达全面2.2概念模型基本术语:实体,联系,码,…常用表示方法:E-R图,UML类图常用建模工具:Visio,PowerDesigner,MySQLWorkbench等

基本术语现实世界的信息是通过实体、属性以及联系等概念的划分来认识的。实体(Entity)

客观存在并可相互区别的事物称为实体,可以是具体的人、事、物或抽象的概念。属性(Attribute)

实体所具有的某一特性称为属性。一个实体可以由若干个属性来刻画。

码(Key)

唯一标识实体的属性(集)域(Domain)

属性的取值范围实体型(EntityType)具有相同属性的实体必然具有共同的静态特征,理解为类型。用实体名及其属性名集合来描述。例如,销售记录中服装编号,顾客编号,购买日期,数量等属性构成一个销售记录的实体型

实体集(EntitySet)具有相同特征的实体集合例如,所有销售记录就是一个实体集联系(Relationship)

现实世界中事物内部以及事物之间的联系在信息世界中抽象为实体内部的联系和实体之间的联系实体型间的联系类型一对一联系(1:1)一对多联系(1:n)多对多联系(m:n)两个实体型间的一对一联系

如果对于实体集A中的每一个实体,实体集B中至多有一个实体与之联系,反之亦然,则称实体集A与实体集B具有一对一联系。记为1:1。实例班级—班长

实体集A实体集B两个实体型间的一对多联系如果对于实体集A中的每一个实体,实体集B中有n个实体(n≥0)与之联系,反之,对于实体集B中的每一个实体,实体集A中至多只有一个实体与之联系,则称实体集A与实体集B有一对多联系,记为1:n实例

班级—学生服装厂商—服装

实体集A实体集B两个实体型间的多对多联系(m:n)如果对于实体集A中的每一个实体,实体集B中有n个实体(n≥0)与之联系,反之,对于实体集B中的每一个实体,实体集A中也有m个实体(m≥0)与之联系,则称实体集A与实体B具有多对多联系。记为m:n实例

顾客—服装学生—课程实体集A实体集B多个实体型间的一对多联系若实体集E1,E2,...,En存在联系,对于实体集Ej(j=1,2,...,i-1,i+1,...,n)中的给定实体,最多只和Ei中的一个实体相联系,则我们说Ei与E1,E2,...,Ei-1,Ei+1,...,En之间的联系是一对多的。实例

设有课程、教师与参考书三个实体型,如果一门课程可以有若干个教师讲授,使用若干本参考书,每一个教师只讲授一门课程,每一本参考书只供一门课程使用,则课程与教师、参考书之间的联系是一对多的。课程选修教师1m参考书n多个实体型间的一对多联系多个实体型间的多对多联系网上商店供应服装mn供应商p工程项目承担机械工具mn施工队p同一实体型内的一对多联系实例:职工实体集内部具有领导与被领导的联系,某一职工(干部)“领导”若干名职工,一个职工仅被另外一个职工直接领导,这是一对多的联系同一实体型内的一对一联系同一实体型内的多对多联系职工领导1nPeterPin-ShanChen于1976年提出基本绘图规则:实体型——用矩形表示属性——用椭圆形表示码——用下划线表示服装编号颜色型号品牌价格一种概念模型表示方法—E-R图联系——用菱形表示,同时标注联系的类型实体型1联系名实体型2111:1联系实体型1联系名实体型2mnm:n联系实体型1联系名实体型21n1:n联系若联系本身有自己的属性,也用椭圆表示课程选修学生mn成绩举例—零件供应系统E-R图年龄职称电话号电话号职工号库存量项目号零件号负责人仓库号供应商号地址姓名账号供应量名称描述规格预算面积姓名零件项目仓库供应商职工供应库存领导工作单价1nnnnmm1p数据建模工具采用数据建模工具将使数据库设计过程更简单,数据模型描述更规范,并有助于后续处理(如生成SQL)。常用数据库建模工具,如Visio,PowerDesigner等,大多采用图形元素和参数设置相结合的方法来描述以下信息(但不局限于):实体型的名称、注解属性的名称、类型、长度、默认值、强制条件码(主码),索引,唯一性约束联系(外码)的名称、类型轻松掌握和运用数据建模技术的最好方法是,从小型工具开始,逐渐深入和提高。举例—学生选课系统E-R图(Visio)举例—员工管理系统E-R图(Visio)举例—员工管理系统E-R图(PowerDesigner)举例—图书借阅系统E-R图(MySQLWorkbench)另一种概念模型表示方法—UML统一建模语言简称UML(UnifiedModelingLanguage),是一种通用的建模语言,具有创建系统的静态结构和动态行为等多种模型的能力。它包含用例图、类图、对象图、状态图、序列图、协作图、活动图、组件图和展开图等九种主要图例。用例图序列图类图——主要用于数据库设计两个类间的关联类的继承参考附录A—网上服装销售系统服装,会员,订单,仓库,供应商,…作业数据库概念模型设计连锁超市管理系统(商店、职工、商品、客户)校园社团组织管理系统(社团、学生、活动)医院病患信息管理系统(病房、病床、病人、医生)体育馆运动器材管理系统(器材、供应商、运动员、管理员)科技竞赛信息管理系统(学生,团队,导师,竞赛,项目)网上书店系统(图书,出版社,客户,购物篮)……分析系统需求,描述对象及其关系,画出E-R图!2.3数据模型的组成要素数据结构数据操作数据的完整性约束数据结构数据结构描述数据库的组成对象以及对象之间的联系。通常包含两类:与对象的类型、内容、性质相关的(比如关系模型中的域、属性、关系等)与数据之间联系有关的数据结构是刻画一个数据模型性质的最重要方面数据结构是对系统静态特性的描述数据操作数据操作对数据库中各种对象(型)的实例(值)允许执行的操作及有关的操作规则数据操作的类型查找更新(包括插入、删除、修改)数据操作是对系统动态特性的描述数据的约束条件数据的约束条件一组完整性规则的集合。完整性规则是给定的数据模型中数据及其联系所具有的制约规则,用以限定符合数据模型的数据库状态以及状态的变化,以保证数据的正确、有效、相容。数据的约束条件数据模型对约束条件的定义反映和规定本数据模型必须遵守的基本的通用的完整性约束条件。例如在关系模型中,任何关系必须满足实体完整性和参照完整性两个条件。提供定义完整性约束条件的机制,以反映具体应用所涉及的数据必须遵守的特定的语义约束条件。2.4结构化数据模型层次模型(HierarchicalModel)网状模型(NetworkModel)关系模型(RelationalModel)面向对象模型(ObjectOrientedModel)非关系模型层次模型按照层次结构的形式组织数据,即用树型结构表示实体集与实体集之间的联系,其中用结点表示实体集,结点之间联系的基本方式是1:n。网状模型用图型结构表示实体集与实体集之间的联系,更具普遍性,可以方便地表示各种类型的联系。关系模型美国IBM公司的研究员E.F.Codd于1970年提出关系模型,1981年为此获得图灵奖。关系模型是目前最重要的一种数据模型目前很多数据库产品都是基于关系模型的,如Oracle(甲骨文)、MicrosoftSQLServer、IBMDB2、Sybase、MySQL等。关系模型1.关系模型的数据结构2.关系模型的基本术语3.关系模型的数据操纵与完整性约束4.关系模型的优缺点关系模型的数据结构关系模型用二维表格表示实体集及其属性设实体集R有属性A1,

A2,…,An,实体集的型可用一个二维表的框架表示,表中每一元组表示实体集的值A1A2A3…Ana11…am1a12…am2a13…am3………a1n…amnA1A2A3…An

(a)关系R的型(b)关系R的值服装编号品牌型号颜色价格W001佐丹奴YH287蓝239W002佐丹奴JK946绿189W003李宁LI143红499W004美津浓U7896紫699关系模型的基本概念关系(Relation)一个关系对应一张二维表元组(Tuple)表中的一行即为一个元组属性(Attribute)表中的一列即为一个属性,给每一个属性起一个名称即属性名域(Domain)属性的取值范围关系模型的基本概念码(Key)

表中的某个属性组,可唯一确定一个元组分量

元组中的一个属性值关系模式

对关系的描述格式为:关系名(属性1,属性2,…,属性n)例如,服装(服装编号,品牌,型号,颜色,价格)关系模型的数据操纵与完整性约束关系模型的数据操纵主要包括:查询、插入、删除和修改。完整性约束:对数据库操作必须满足的条件关系的完整性约束条件主要包括:实体完整性、参照完整性和用户自定义完整性关系模型的优缺点优点建立在坚实的数学理论基础上数据结构简单、清晰,用户易懂易用关系模型的存取路径对用户透明,数据独立性高缺点存取路径对用户透明导致查询效率较低为提高性能,须进行查询优化,DBMS开发难度大面向对象的模型面向对象数据模型(ObjectOrientedDataModel–OODM)采用面向对象方法构造出来的数据模型在面向对象数据模型中,用面向对象方法中的一些基本概念和方法来表示三个组成部分:对象、方法、类的继承与合成关系模型与OO模型的对应关系关系模型OO模型表(元组)类(对象)KEYOID属性属性关系上的操作(增,删,改,查询)方法、消息完整性约束约束方法、消息ER模型类层次(OO模型)2.5非结构化模型企业需要高效、安全的管理这些类型的数据:结构化半结构化非结构化XMLPDF很多应用中,文件和关系型数据相伴而生例如:文件管理系统,医学系统,CAD,图像系统Images将非结构化数据集中到

温馨提示

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

评论

0/150

提交评论