资源简介 (共30张PPT)数据库系统设计第5章目录01数据库系统设计概述02需求分析03概念结构设计04逻辑结构设计05物理结构设计06数据库实施07数据库运行和维护本章主要内容本章主要介绍数据库系统设计的整体过程及具体设计过程中使用的相关方法和技术。从数据库设计的概念出发,引出了数据库系统设计的内容、特点、使用的方法、基本过程和步骤;重点介绍需求分析、概念结构设计、逻辑结构设计、物理结构设计、数据库实施、数据库运行和维护等阶段的具体设计内容和步骤,并详细介绍需求分析、概念结构设计、逻辑结构设计的模型设计方法和模型创建步骤。准备知识模型是对事物、对象、过程等客观系统中人们感兴趣的内容的模拟和抽象表达,是理解系统的思维工具。数据模型也是一种模型,是计算机世界对现实世界数据特征的抽象、表示和处理的工具。数据库不仅要反映数据本身内容,而且要反映数据之间的联系,而这种模拟是通过数据模型实现的。数据模型是数据库的框架,是数据库的核心和基础。逻辑结构设计第5章045.4.1 概念模型转换为逻辑模型的步骤(1)选择最佳的数据模型,把概念模型转换成一般的数据模型,并将一般的数据模型转换成特定的数据库管理系统所支持的数据模型。(2)通过优化方法将其转化为优化的数据模型。(3)设计用户子模式。5.4.2 概念模型向关系模型转换的原则将E-R图转换为关系模型实际上就是要将实体集、属性及联系转换为相应的关系模式。概念模型向关系模型转换的原则涉及以下2方面内容:1.实体集、属性转换为关系模型的转换规则2.实体集间的联系转换为关系模式的转换规则1. 实体集、属性转换为关系模型的转换规则将概念模型中的一个实体集转换为关系模型中的一个关系,实体的属性就是关系的属性,实体的码就是关系的码,关系的结构是关系模式。2. 实体集间的联系转换为关系模式的转换规则实体集间的联系转换为关系模型时,分以下3种情况:(1)1∶1联系转换为关系模式的转换规则(2)1∶n联系转换为关系模式的转换规则(3)m∶n联系转换为关系模式的转换规则1∶1联系转换为关系模式的转换规则1∶1联系转换为关系模式有以下2种转换方法:① 将联系与任意一端实体所对应的关系合并。在被合并关系中增加属性,新增的属性为与联系相关的另一端实体对应关系的码,被合并关系中的码不变。② 将联系转换为一个独立的关系。将与该联系相连的各实体的码及联系本身的属性均转换为关系的属性,且关系的码为两端实体码的联合。【例5.11】将图5.38所示的1∶1联系转换为关系模式。【例5.11】方案1:将每个实体集转换为关系模型中的一个关系,1∶1的联系形成一个担任领导关系独立存在。该方案形成的关系模型如下:职工(职工号,姓名,出生日期,职称)部门(部门号,名称,地址,联系电话)担任领导(职工号,部门号)【例5.11】方案2:“担任领导”与“职工”关系合并。该方案形成的关系模型如下:职工(职工号,姓名,出生日期,职称,部门号)部门(部门号,名称,地址,联系电话)【例5.11】方案3:“担任领导”与“部门”关系合并。该方案形成的关系模型如下:职工(职工号,姓名,出生日期,职称)部门(部门号,名称,地址,联系电话,职工号)对比以上3种方案:方案1转换得到的关系多,增加了系统的复杂性;方案2中的职工关系,由于并不是每个职工都担任一个部门的领导,会造成部门号属性的空值过多。比较起来,方案3比较合理。1∶n联系转换为关系模式的转换规则1∶n联系转换为关系模型有以下2种转换方法:① 将联系转换为一个独立的关系。新关系的属性由与该联系相连的各实体的码及联系本身的属性组成,该关系的码为n端实体的码。② 将联系与n端实体所对应的关系合并。在n端实体对应的关系中增加新属性,新属性由联系对应的1端实体的码和联系自身的属性构成,新增属性后n端实体对应关系的码不变。【例5.12】将图5.39所示的1∶n联系转换为关系模式。【例5.12】方案1:将每个实体转换为关系模型中的一个关系,1∶n联系形成新的关系独立存在。该方案形成的关系模型如下:专业(专业号,专业名)班级(班号,班名,人数)属于(专业号,班号,年级)【例5.12】方案2:与n端实体合并。该方案形成的关系模型如下:专业(专业号,专业名)班级(班号,班名,人数,专业号,年级)对比以上两个方案:方案1转换得到的关系较多,适用于属于关系频繁改变的应用场景;方案2的关系少,适用于属于关系变化概率较小的应用场景。【例5.13】将图5.40所示的1∶n联系转换为关系模式。【例5.13】方案1:将实体转换为关系模型中的一个关系,1∶n联系形成新的关系独立存在,即转换为两个关系模式。该方案形成的关系模型如下:职工(职工号,姓名,年龄)领导(领导工号,职工号)【例5.13】方案2:方案2:将联系与n端实体合并,转换为一个关系模式。该方案形成的关系模型如下:职工(职工号,姓名,年龄,领导工号)对比以上两种方案,方案2在充分表达原有数据联系的基础上,转化得到的关系模式较少,因此方案2更好。m∶n联系转换为关系模式的转换规则m∶n联系转换为关系模型只有一种转换方法,即将一个m∶n联系转换为一个关系,与该联系相连的各实体的码及联系本身的属性均转换为新关系的属性,新关系的码为两个相连实体码的组合(该码为多属性构成的组合码)。【例5.14】将图5.41所示的1∶n联系转换为关系模式。【例5.14】在将该E-R图转换为关系模型时,将每个实体集转换为关系模型中的一个关系,m∶n的选修联系形成一个独立的关系,即转换为3个关系模式。该方案形成的关系模型如下。学生(学号,姓名,性别,年龄,系编号)课程(课程号,课程名称,课程类型,学时,学分)选修(学号,课程号,成绩)3个或3个以上实体集间的多元联系的转换方法将概念模型中的一个实体集转换为关系模型中的一个关系,实体的属性就是关系的属性,实体的码就是关系的码,关系的结构是关系模式。【例5.15】将图5.42所示的3个实体集间的多元联系转换为关系模式。【例5.15】在将该E-R图转换为关系模型时,3个实体对应3个关系,对于2个多对多的多元联系,需要新建一个独立的关系,即转换为4个关系模式。该方案形成的关系模型如下。供应商(供应商号,供应商名,地址)零件(零件号,零件名,价格)产品(产品号,产品名,型号)供应(供应商号,零件号,产品号,数量)5.4.3 逻辑模型优化及外模式设计数据模型的优化:根据软件系统应用的需要对逻辑模型进行适当的修改和调整,进一步提高数据库应用系统的性能。1. 数据模型的优化常用的优化方法包括规范化和分解2种。(1)规范化。使用关系规范化理论,逐一分析各关系模式中包含的属性间是否存在数据依赖,根据分析结果确定各关系模式的范式等级。说明:在进行关系规范化时,规范化等级并不是越高越好,要结合具体的应用需求进行。(2)分解。使用模式分解技术(水平分解或垂直分解)将一个表分解为两个或多个表。2. 用户外模式设计用户外模式也称子模式,是设计人员依据用户对数据的使用要求、习惯及数据权限分配与安全性要求,对某一关系模式建立的适合具体局部应用的属性子集。在关系数据库管理系统中,有以下两种用户外模式设计的实现方法。(1)创建局部应用视图。(2)使用垂直分解技术创建用户外模式。设计用户外模式的意义有以下3点:(1)定义更符合用户习惯的别名。(2)对不同级别的用户设计不同的外模式。(3)简化用户操作,提高查询效率。 展开更多...... 收起↑ 资源预览