《第5章数据库设计和ER模型.ppt》由会员分享,可在线阅读,更多相关《第5章数据库设计和ER模型.ppt(48页珍藏版)》请在三一文库上搜索。
1、1,第5章 数据库设计 和ER模型,2,本章重要概念,(1)DBS生存期及其7个阶段的任务和工作, DBD过程的输入和输出。 (2)概念设计的重要性、主要步骤。逻辑设 计阶段的主要步骤。 (3)ER模型的基本元素,属性的分类,联系 的元数、连通词、基数。采用ER方法的 概念设计步骤。 (4)ER模型到关系模型的转换规则。采用ER 方法的逻辑设计步骤。 (5)ER模型的扩充:弱实体,超类和子类。,3,主要内容和学习要求,数据库设计概述(了解) 数据库设计的全过程(领会) ER模型 (综合应用) ER模型到关系模型的转换(综合应用) ER模型实例分析 (理解) ER模型的扩充 (理解) 小结,4,
2、5.1 数据库设计概论之一,软件工程 人们认为,应该用科学知识、工程方面的纪律指导软件开发的过程,以提高软件质量和开发效率,降低开发成本 。 软件生存期 从软件的规划、研制、实现、投入运行后的维护,直到它被新的软件所取代而停止使用的整个期间。 数据库工程 数据库系统生存期 数据库应用系统从开始规划、设计、实现、维护到最后被新的系统取代而停止使用的整个期间。 数据库设计的输入输出,5,软件生存期,数据库生存期,6,7,主要内容,5.1 数据库设计概述 5.2 数据库设计的全过程 5.3 ER模型 5.4 ER模型到关系模型的转换 5.5 ER模型实例分析 5.6 ER模型的扩充 小结,8,规划阶
3、段,目标 规划阶段的三个步骤 系统调查:对企业组织作全面的调查,画出组织层次图,以了解企业的组织结构。 可行性分析:从技术、经济、效益、法律等诸方面对建立数据库的可行性进行分析;写出可行性分析报告;组织专家进行讨论其可行性。 确定数据库系统的总目标和制定项目开发计划。,9,需求分析,目标 需求分析工作(四步) 分析用户活动产生,产生业务流程图。 确定系统范围,产生系统范围图。 分析用户活动涉及的数据, 产生数据流图。 分析系统数据,产生数据字典。,10,概念设计,目标 为什么需要概念设计 概念设计的主要步骤 进行数据抽象,设计局部概念模式 将局部概念模式综合成全局概念模式 评审,11,12,逻
4、辑设计,目标 逻辑设计步骤,13,物理设计,目标 什么是数据库的物理结构 物理设计的步骤 存储记录结构设计 确定数据存放位置 存取方法的设计 完整性和安全性考虑 程序设计,14,数据库的实现,目标 实现数据库应做的主要工作 用DDL定义数据库结构; 组织数据入库; 对数据量不大的小型系统(人工):筛选数据;转换数据格式;输入数据;校验数据。 对大中型系统(自动):筛选数据;输入数据;校验数据;转换数据;综合数据。 编制与调试应用程序; 数据库试运行。 功能测试 性能测试(时空代价),15,数据库的运行与维护工作,数据库的转储和恢复 数据库安全性、完整性控制 数据库性能的监督、分析和改进 数据库
5、的重组织和重构造,16,主要内容,5.1 数据库设计概述 5.2 数据库设计的全过程 5.3 ER模型 5.4 ER模型到关系模型的转换 5.5 ER模型实例分析 5.6 ER模型的扩充 小结,17,ER模型概述,什么是ER模型 ER模型的历史 ER模型的基本元素 实体 联系 属性 例子,实体,联系,属性,ER模型图例,18,属性的分类,基本属性和复合属性 单值属性和多值属性 多值属性的处理 将原来的多值属性用几个新的单值属性来表示。 将原来的多值属性用一个新的实体类型表示 导出属性 空值,零件编码,19,联系的设计之一,联系集 联系集是n(n2)个实体集上的数学关系,这些实体集不必互异。如果
6、E1,E2,En为n个实体集,那么联系集R是(e1,e2,en)|e1E1 ,e2E2,enEn的一个子集,而(e1,e2,en)是一个联系。 联系的元数 一个联系涉及到的实体集个数 联系的连通词 联系涉及到的实体集之间实体对应的方式 实体的基数 有两个实体集E1和E2,E1中每个实体与E2中有联系实体的数目的最小值min和最大值max,称为E1的基数,用(min,max)形式表示,20,ER模型的操作 包括实体类型、联系类型和属性的分裂、合并、增删等等,21,22,图5.17 不合法的合并,B,(a),A,C,A-C,B-C,23,采用ER方法的数据库概念设计 之设计局部ER模式,24,局部
7、模式,现有的教学 管理系统,初步分析系统的对象,根据服务种类分析教师子模块,局部ER图,25,其他局部模式,现有的教学 管理系统,初步分析系统的对象,根据服务种类分析学生子模块,局部ER图,26,其它局部模式,现有的教学 管理系统,初步分析系统的对象,根据服务种类分析课程子模块,局部ER图,27,采用ER方法的数据库概念设计 之设计全局 ER模式,28,采用ER方法的数据库概念设计 之全局ER模式的优化,实体类型的合并 1:1联系的两个实体类型 具有相同键的实体类型 冗余属性的消除 冗余联系的消除:利用规范化理论中函数依赖的概念消除冗余联系,29,例子:三个局部ER图合并成一个ER图,1,1,
8、教师,管理,1,1,30,主要内容,5.1 数据库设计概述 5.2 数据库设计的全过程 5.3 ER模型 5.4 ER模型到关系模型的转换 5.5 ER模型实例分析 5.6 ER模型的扩充 小结,31,ER图转换成关系模式集的规则(1),将每个实体类型转换成一个关系模式,实体的属性即为关系模式的属性,实体标识符即为关系模式的键。 二元联系类型的转换: 若实体间联系是1:1,可以在两个实体类型转换成的两个关系模式中任意一个关系模式的属性中加入另一个关系模式的键和联系类型的属性。 若实体间联系是1:N,则在N端实体类型转换成的关系模式中加入1端实体类型的键和联系类型的属性。,32,ER图转换成关系
9、模式集的规则(2),若实体间联系是M:N,则将联系类型也转换成关系模式,其属性为两端实体类型的键加上联系类型的属性,而键为两端实体键的组合。 一元联系类型的转换:同二元联系。 三元联系类型的转换: 总是将三元联系类型转换成关系模式,其属性为三端实体类型的键加上联系类型的属性,而键为三端实体键的组合。,33,ER模型到关系模型的转换实例,运动员(编号,姓名,性别,名次,上一名次编号,下一名次编号),职工(工号,姓名,年龄,性别,经理工号),34,ER模型到关系模型的转换实例,零件(零件号,零件名,规格) 组成(零件号,子零件号,数量),仓库(仓库号,仓库名,地址) 商店(商店号,商店名) 商品(
10、商品号,商品名) 进货(商店号,商品名,仓库号,日期,数量),35,采用ER方法的逻辑设计步骤,36,主要内容,5.1 数据库设计概述 5.2 数据库设计的全过程 5.3 ER模型 5.4 ER模型到关系模型的转换 5.5 ER模型实例分析 5.6 ER模型的扩充 小结,37,例1 库存销售系统的ER模型及转换,库存系统ER图,车间(车间号,车间名,主任名) 产品(产品号,产品名,单价) 仓位(仓位号,地址,主任名) 客户(客户号,客户名,联系人,电话, 地址,税号,账号) 销售员(销售员号,姓名,性别,学历,业绩),实体,入库(入库单号,入库量,入库日期,经手人, 车间号,仓位号,产品名)
11、出库(出库单号,出库量,出库日期,经手人, 客户号,产品名,仓位号) 订单(订单号,数量,折扣,总价,订单日期, 产品号,客户号,销售员号) 存储(仓位号,产品号,核对日期,核对员,存储量),联系,38,例2 公司车队信息系统的ER模型,图5.27 公司车队信息系统的ER模型,39,例3 人事管理信息系统的ER模型,图5.28 人事管理信息系统的ER图,40,例4 旅游管理信息系统的ER模型,保险单,图5.29 旅游管理信息系统的ER图,41,主要内容,5.1 数据库设计概述 5.2 数据库设计的全过程 5.3 ER模型 5.4 ER模型到关系模型的转换 5.5 ER模型实例分析 5.6 ER
12、模型的扩充 小结,42,弱实体,什么是弱实体 弱实体的表示方法 包含弱实体的ER图转换成关系模式,43,子类实体与超类实体,什么是子类和超类 子类和超类的性质 子类与超类之间具有继承性,但子类本身还能包含比超类更多的属性。 子类和超类有相同的标识符,学校人事系统中实体之间的联系,人员(身份证号,姓名,年龄,性别) 教师(身份证号,教师编号,职称) 学生(身份证号,学号,系别,专业) 本科生(身份证号,入学年份) 研究生(身份证号,研究方向,导师姓名),对应的关系模式,44,主要内容,5.1 数据库设计概述 5.2 数据库设计的全过程 5.3 ER模型 5.4 ER模型到关系模型的转换 5.5
13、ER模型实例分析 5.6 ER模型的扩充 小结,45,小结,数据库的生命周期 数据库设计的步骤 ER模型 基本概念和引进对象后的扩展 ER模型的设计方法 ER模型向关系模型的转换,46,本章的重点篇幅,(1)教材中P193-194的 转换规则和实例。 (2)教材中P195-200的 四个ER模型实例。,47,对ER模型的理解(一),ER模型是人们认识客观世界的一种方法、工具。ER模型具有客观性和主观性两重含义。 ER模型是在客观事物或系统的基础上形成的,在某种程度上反映了客观现实,反映了用户的需求,因此ER模型具有客观性。 但ER模型又不等同于客观事物的本身,它往往反映事物的某一方面,至于选取哪个方面或哪些属性,如何表达则决定于观察者本身的目的与状态,从这个意义上说,ER模型又具有主观性。,48,对ER模型的理解(二),ER模型的设计过程,基本上是两大步: 先设计实体类型(此时不要涉及到“联系”); 再设计联系类型(考虑实体间的联系)。 具体设计时,有时“实体”与“联系”两者之间的界线是模糊的。数据库设计者的任务就是要把现实世界中的数据以及数据间的联系抽象出来,用“实体”与“联系”来表示。 另外,设计者应注意,ER模型应该充分反映用户需求,ER模型要得到用户的认可才能确定下来。,
链接地址:https://www.31doc.com/p-2566893.html