《第4章 数据建模与实体关系模型PPT讲稿.ppt》由会员分享,可在线阅读,更多相关《第4章 数据建模与实体关系模型PPT讲稿.ppt(72页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第第4 4章章 数数据建模据建模与与实体体关关系模型系模型第1页,共72页,编辑于2022年,星期二 了解数据库项目开发的基本步骤 理解数据模型的功能和作用 了解E-R模型的主要组成部分 学习构建E-R模型图【学习目标】第2页,共72页,编辑于2022年,星期二一、数据库开发的基本步骤一、数据库开发的基本步骤4.1 数据库开发基本过程概念数据概念数据模型模型物理数据物理数据模型模型数据库现实世界抽取转化创建数据库需求分析数据库设计数据库实现数据库开发步骤第3页,共72页,编辑于2022年,星期二二、各阶段主要活动二、各阶段主要活动1.需求分析阶段w 获取数据表单、报表、查询、业务规则、数据更新
2、说明w 分析数据项特征、数据类型、数据取值约束w 描述数据关系、数据处理要求w 创建数据概念模型2.系统设计阶段w 数据库结构设计(数据库系统结构、数据逻辑模型、数据物理模型)w 数据库表、视图、查询设计w 数据库表关联设计w 数据库表约束设计w 数据库表索引设计第4页,共72页,编辑于2022年,星期二3.数据库实现w 数据库模型物理实现w 数据库数据上线w 数据库系统测试第5页,共72页,编辑于2022年,星期二三、数据库建模三、数据库建模1.什么是数据建模 对现实世界中存在的数据对象及其关系进行分析、发掘、描述,并给出其数据关系结构的过程。2.数据库建模层次 概念数据模型用户能直接理解的
3、数据对象及其业务联系 逻辑数据模型系统数据对象的逻辑表示、逻辑联系 物理数据模型系统数据对象的物理存贮结构及物理联系 第6页,共72页,编辑于2022年,星期二一、实体关系模型一、实体关系模型4.2 实体-关系模型概念数据模型的理论基础是实体-关系模型(E-R模型),它最早是由P.Chen于1976年提出。此后不断有人对它进行改进,使它现成为比较流行的数据建模方法,并有集成到许多CASE工具中,用于创建数据库的概念数据模型。P.Chen(陈品山)第7页,共72页,编辑于2022年,星期二二、实体二、实体-关系模型的元素关系模型的元素在E-R模型中,主要包括实体、属性、标识符和关系等元素。1.实
4、体实体(Entity)是指问题域中存在的人、事、物、地点等客观存在的具体事物以及抽象的概念。即用户希望跟踪的数据对象,如客户、交易、产品、订单等。实体集是指同类实体的集合。如商品(ITEM)实体集。可乐、牙膏、铅笔等是商品实体集的实例。第8页,共72页,编辑于2022年,星期二第9页,共72页,编辑于2022年,星期二2.属性属性是指描述实体特征的数据项。每个实体都具有1个或多个属性。学号学号姓名姓名身份证号身份证号性别性别专业专业学生学生属性属性第10页,共72页,编辑于2022年,星期二3.标识符标识符是指标识不同实体实例的属性。标识符可以是1个或多个属性。学号学号姓名姓名身份证号身份证号
5、性别性别专业专业学生学生标识符标识符学号学号课程课程平时成绩平时成绩期末成绩期末成绩实践成绩实践成绩总成绩总成绩成绩表成绩表标识符标识符标识符与主键的区别是标识符是一个逻辑概念,标识符不一定唯一。第11页,共72页,编辑于2022年,星期二4.关系关系(Relationship)是指实体之间的关联,如“学生”与“成绩”的联系、“孩子”与“父亲”、“母亲”的联系等。关系中实体集的数目称为关系度数。学生学生成绩成绩学业评估学业评估父亲父亲母亲母亲孩子孩子血缘血缘二元关系三元关系第12页,共72页,编辑于2022年,星期二两个实体之间可能具有如下3种二元关系之一:w 1对1(1:1)w 1对多(1:
6、N)w 多对多(M:N)学生学生学生证学生证身份标记身份标记班班学生学生拥有拥有教师教师学生学生教学教学111NNMa)1对对1关系关系b)1对多关系对多关系c)多对多关系多对多关系第13页,共72页,编辑于2022年,星期二上述实体之间的关系反映了一个给定实体有多少实例与另一实体实例存在的数量对应关系,通常采用术语基数(Cardinality)。学生学生学生证学生证身份标记身份标记班班学生学生拥有拥有教师教师学生学生教学教学111NNM最小基数最小基数最大基数最大基数第14页,共72页,编辑于2022年,星期二在实体之间除了需要反映了数量对应关系,有时还需要反映关系实体参与的必要性,即可选(
7、optional)或强制(mandatory)。强制强制可选可选学生学生学生证学生证身份标记身份标记班班学生学生拥有拥有导师导师学生学生指导指导第15页,共72页,编辑于2022年,星期二一、实体关系图不同版本一、实体关系图不同版本4.3 实体-关系图实体-关系模型图(E-R模型)有如下几个不同版本。Crows feet(鸟足)模型第16页,共72页,编辑于2022年,星期二classic模型第17页,共72页,编辑于2022年,星期二IDEF1X模型第18页,共72页,编辑于2022年,星期二UML模型第19页,共72页,编辑于2022年,星期二二、数据库建模通常使用符号二、数据库建模通常使
8、用符号1对多的两个版本E-R模型传统版本E-R模型鸟足版本第20页,共72页,编辑于2022年,星期二多对多的两个版本E-R模型传统版本E-R模型鸟足版本第21页,共72页,编辑于2022年,星期二Crowfeet的符号第22页,共72页,编辑于2022年,星期二三、主流数据库建模工具三、主流数据库建模工具PowerDesignerPowerDsigner是一种面向软件分析与设计的CASE工具,它基于传统数据库E-R建模、UML建模、业务流程建模、XML等理论,提供软件需求模型、业务流程模型、概念数据模型、逻辑数据模型、物理数据模型、面向对象模型、自定义模型的开发支持。概念数据模型第23页,共
9、72页,编辑于2022年,星期二世界最著名的两大CASE工具Rational Rose和PowerDesignerPowerDesigner 作者王晓昀是一位中国人,在法国SDP软件公司工作时,由于苦觅一个好用的CASE工具未果,自己开发了AMC*Designer。1995年SDP被Powersoft公司收购,同年Powersoft 被Sybase收购,2010年SAP收购SybaseRose是从UML面向对象建模,而后再向数据库建模发展。PowerDesigner先是一个纯粹的数据库建模工具,后来才向面向对象建模,业务逻辑建模及需求分析建模发展第24页,共72页,编辑于2022年,星期二Po
10、werDesigner 产品发展第25页,共72页,编辑于2022年,星期二PowerDsigner的数据建模工具特点:具有良好的性价比支持目前30多种流行的数据库管理系统(如Oracle、SYBASE、SQLServer、DB2、DBF等)支持目前多种客户端开发工具(如PB、VB、VC、Delphi等)满足大、中、小型数据库建模的需求第26页,共72页,编辑于2022年,星期二概概念念数数据模型据模型Conceptual Data Model(CDM)从用户角度所建模的系统数据对象及其关系,它帮助用户分析信息系统的数据结构关系。逻辑逻辑数数据模型据模型Logic Data Mode(LDM)
11、从系统分析员角度所建模的系统数据对象逻辑结构关系,它帮助开发人员分析信息系统的逻辑数据结构。物理物理数数据模型据模型Physical Data Model(PDM)从系统设计人员角度所建模的系统数据物理存储及结构关系,它针对设计者具体定义信息系统的数据库表结构。PowerDesigner可建立的数据模型可建立的数据模型第27页,共72页,编辑于2022年,星期二软件开发阶段与数据模型的关系CDMPDM实体关系图ERD系统数据概念模型需求分析阶段数据库设计图系统数据物理模型系统设计阶段LDM关系模型图系统数据逻辑模型第28页,共72页,编辑于2022年,星期二PowerDesigner数据建模:
12、概念级或逻辑级,CDM和LDM代表数据逻辑关系,不考虑在数据库上的物理实现。物理级,PDM指定了物理实现的具体细节,这些细节包括:目标RDBMS的特征、性能和可用性等。CDMSQLServerPDMORACLEPDMSybasePDMSQLServerORACLESybase概念逻辑级数据模型物理级数据模型LDM第29页,共72页,编辑于2022年,星期二概念数据模型建模案例1:学绩管理第30页,共72页,编辑于2022年,星期二PowerDesigner的窗口布局第31页,共72页,编辑于2022年,星期二PowerDesigner实体第32页,共72页,编辑于2022年,星期二第33页,共
13、72页,编辑于2022年,星期二第34页,共72页,编辑于2022年,星期二PowerDesigner关系第35页,共72页,编辑于2022年,星期二第36页,共72页,编辑于2022年,星期二四、弱实体四、弱实体实体类型可分为:w 弱实体w 强实体弱实体是指只有依赖其它实体才可以存在于数据库中的实体。强实体强实体弱实体弱实体强实体是指非弱实体。第37页,共72页,编辑于2022年,星期二下面哪个是弱实体?哪个是强实体?第38页,共72页,编辑于2022年,星期二标识符(ID)依赖实体强实体弱实体五、五、ID依赖实体依赖实体第39页,共72页,编辑于2022年,星期二w 只有在创建了强实体的实
14、例后,才能添加标识符依赖实体的实例。w 在删除强实体前,必须同时删除所有标识符依赖实体的实例。说明:第40页,共72页,编辑于2022年,星期二六、非六、非ID依赖的弱实体依赖的弱实体非标识符(ID)依赖弱实体第41页,共72页,编辑于2022年,星期二问题问题:分别说明分别说明ORDER、ASSIGNMENT、PRESCRIPTION实体类型实体类型非标识符(ID)依赖弱实体标识符(ID)依赖弱实体强实体第42页,共72页,编辑于2022年,星期二七、子类实体七、子类实体子类型实体第43页,共72页,编辑于2022年,星期二八、递归关系八、递归关系递归关系示例第44页,共72页,编辑于202
15、2年,星期二例 图书管理系统概念数据模型第45页,共72页,编辑于2022年,星期二一、一、Heather Sweeney 设计公司需求设计公司需求4.4 E-R模型设计示例w Heather Sweeney 是一个室内装潢设计公司老板,其公司除了设计业务外,还在住宅、厨房用品及商店场所开设系列培训课程。w 收入主要来源销售有关厨房装修书籍、录像商品以及提供设计咨询。w 需要通过数据库来跟踪客户,发布商品推荐与咨询服务。第46页,共72页,编辑于2022年,星期二二、从培训课客户列表提取实体二、从培训课客户列表提取实体第47页,共72页,编辑于2022年,星期二第1版本ER图第48页,共72页
16、,编辑于2022年,星期二第2版本ER图第49页,共72页,编辑于2022年,星期二第3版本ER图第50页,共72页,编辑于2022年,星期二三、从客户信函模版补充实体三、从客户信函模版补充实体客户信函第51页,共72页,编辑于2022年,星期二含有CONTACT实体的第1版本ER图第52页,共72页,编辑于2022年,星期二含有CONTACT实体的第2版本ER图第53页,共72页,编辑于2022年,星期二含有CONTACT实体的第3版本ER图第54页,共72页,编辑于2022年,星期二四、从销售发货单补充实体四、从销售发货单补充实体销售发货单第55页,共72页,编辑于2022年,星期二含有I
17、NVOICE实体的第4版本ER图第56页,共72页,编辑于2022年,星期二含有INVOICE实体的第5版本ER图第57页,共72页,编辑于2022年,星期二含有INVOICE实体的第6版本ER图第58页,共72页,编辑于2022年,星期二五、实体属性说明五、实体属性说明SEMINAR实体第59页,共72页,编辑于2022年,星期二CUSTOMER实体第60页,共72页,编辑于2022年,星期二CONTACT实体第61页,共72页,编辑于2022年,星期二INVOICE实体第62页,共72页,编辑于2022年,星期二LINE_ITEM实体第63页,共72页,编辑于2022年,星期二PRODUC
18、T实体第64页,共72页,编辑于2022年,星期二一、一、WMCRM 数据库模型数据库模型4.5 使用Access开发原型WMCRM数据库的E-R模型业务规则:每个客户只与一个销售人员联系业务第65页,共72页,编辑于2022年,星期二修改后的E-R模型业务规则:任何客户可以通过任何销售人员联系业务第66页,共72页,编辑于2022年,星期二二、使用二、使用ACCESS为原始数据模型创建表单原型为原始数据模型创建表单原型原始数据E-R模型第67页,共72页,编辑于2022年,星期二原始数据的表单原型第68页,共72页,编辑于2022年,星期二三、为修改的数据模型创建表单原型三、为修改的数据模型创建表单原型修改的数据ER模型第69页,共72页,编辑于2022年,星期二修改数据模型的表单原型第70页,共72页,编辑于2022年,星期二本章小结 数据库系统开发三个阶段 数据模型、数据库设计方案、业务规则 实体-关系模型 弱实体、强实体、子实体 实体属性定义 第71页,共72页,编辑于2022年,星期二练习:教材P224,4.13第72页,共72页,编辑于2022年,星期二