0
点赞
收藏
分享

微信扫一扫

[XJTUSE DATABASE]——第五章 数据库设计

一ke大白菜 2022-02-04 阅读 130

文章目录

[XJTUSE DATABASE]——第五章 数据库设计

大题分析

第五章 数据库设计

一、数据库设计概述

数据库设计分6个阶段

需求分析和概念设计独立于任何数据库管理系统

逻辑设计和物理设计与选用的数据库管理系统密切相关

image-20220204221554557

二、需求分析

详细调查现实世界要处理的对象(组织、部门、 企业等)。

充分了解原系统(手工系统或计算机系统)工作概况。

明确用户的各种需求。

在此基础上确定新系统的功能。

新系统必须充分考虑今后可能的扩充和改变。

步骤

1️⃣ 调查清楚用户的实际需求并进行初步分析。

2️⃣ 与用户达成共识。

3️⃣ 分析与表达这些需求。

对用户需求进行分析与表达后,需求分析报告必须 提交给用户,征得用户的认可。

数据字典

数据字典的内容

数据项是数据的最小组成单位。

若干个数据项可以组成一个数据结构。

数据字典通过对数据项和数据结构的定义来描述 数据流、数据存储的逻辑内容。

数据项

数据结构

数据流

数据流是数据结构在系统内传输的路径。

数据流描述={数据流名,说明,数据流来源,数据流去向,组成:{数据结构}, 平均流量,高峰期流量}

数据存储

数据存储是数据结构停留或保存的地方,也是数据 流的来源和去向之一。

数据存储描述={数据存储名,说明,编号,输入的数据流 ,输出的数据流, 组成:{数据结构},数据量, 存取频度,存取方式}

处理过程

处理过程的具体处理逻辑一般用判定表或判定树来描述。数据字典中只需要描述处理过程的说明性信息。

处理过程说明性信息的描述

处理过程描述={处理过程名,说明,输入:{数据流},输出:{数据流},处理:{简要说明}}

三、概念结构设计

将需求分析得到的用户需求抽象为信息结构(即概 念模型)的过程就是概念结构设计。

概念模型的特点:

描述概念模型的工具:E-R模型

实体与属性的划分原则

为了简化E-R图的处置,现实世界的事物能作为属性对待的,尽量作为属性对待。

两条准则:

示例:职工是一个实体,职工号、姓名、年龄是职工的属性。

image-20220204223318135

示例:在医院中,一个病人只能住在一个病房,病房号可以作为病 人实体的一个属性;

image-20220204223641836

设计实例:销售管理子系统E-R图的设计。

该子系统的主要功能是:

每张订单由订单号、若干头信息和订单细节组成。订单细节又 有订货的零件号、数量等来描述。按照准则(2),订单细节就不能作订单的属性处理而应该上升为实体。一张订单可以订若干产 品,所以订单与订单细节两个实体之间是1∶n的联系。

image-20220204224115123

原订单和产品的联系实际上是订单细节和产品的联 系。每条订货细节对应一个产品描述,订单处理时从 中获得当前单价、产品重量等信息。

工厂对大宗订货给予优惠。每种产品都规定了不同 订货数量的折扣,应增加一个“折扣规则”实体存放 这些信息,而不应把它们放在产品实体中。

image-20220204224129388

对每个实体定义的属性如下:

顾客:{顾客号,顾客名,地址,电话,信贷状况,账目余额}
订单:{订单号,顾客号,订货项数,订货日期,交货日期,工 种号,生产地点}
订单细则:{订单号,细则号,零件号,订货数,金额}
应收账款:{顾客号,订单号,发票号,应收金额,支付日期,
支付金额,当前余额,货款限额}
产品:{产品号,产品名,单价,重量}
折扣规则:{产品号,订货量,折扣}

ER图的集成

E-R图的集成一般需要分两步:

合并E-R图,生成初步E-R图

各个局部应用所面向的问题不同,各个子系统的E-R图 之间必定会存在许多不一致的地方,称之为冲突。

子系统E-R图之间的冲突主要有三类:

属性冲突

② 命名冲突

③ 结构冲突

2️⃣ 情况2:同一实体在不同子系统的E-R图中所包含的属性个数和属性排列次序不完全相同。

3️⃣ 情况3:实体间的联系在不同的E-R图中为不同的类型。

image-20220204224627582

消除不必要的冗余,设计基本E-R图

所谓冗余的数据是指可由基本数据导出的数据,冗余的联系是指可由其他联系导出的联系。

消除冗余主要采用分析方法,即以数据字典和数据流图为依据,根据数据字典中关于数据项之间逻辑关系的说明来消除冗余

四、逻辑结构设计

逻辑结构设计的任务

把概念结构设计阶段设计好的基本E-R图转换为与选用数据库管理系统产品所支持的数据模型相符合的逻辑结构。

转换内容

E-R图由实体型、实体的属性和实体型之间的联系三个要素组成。

关系模型的逻辑结构是一组关系模式的集合。

将E-R图转换为关系模型:将实体型、实体的属性和实体型之间的联系转化为关系模式。

转换原则

一个实体型转换为一个关系模式。

实体型间的联系有以下不同情况

1️⃣ 一个1:1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。

转换为一个独立的关系模式

与某一端实体对应的关系模式合并

2️⃣ 一个1:n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并。

转换为一个独立的关系模式

与n端对应的关系模式合并

3️⃣ 一个m:n联系转换为一个关系模式

4️⃣ 具有相同码的关系模式可合并

目的:减少系统中的关系个数

合并方法:

示例

image-20220204225641589

部门(部门号,部门名,经理的职工号,…)
职工(职工号、部门号,职工名,职务,…)
产品(产品号,产品名,产品组长的职工号,…)
供应商(供应商号,姓名,…)
零件(零件号,零件名,…)
职工工作(职工号,产品号,工作天数,…)
供应(产品号,供应商号,零件号,供应量)

五、物理结构设计

定义

数据库在物理设备上的存储结构与存取方法称为数据库的物理结构,它依赖于选定的数据库管理系统。

为一个给定的逻辑数据模型选取一个最适合应用要求的物理结构的过程,就是数据库的物理设计

步骤

1️⃣ 确定数据库的物理结构

2️⃣ 对物理结构进行评价

准备工作

充分了解应用环境,详细分析要运行的事务,以获得 选择物理数据库设计所需参数。

充分了解所用关系型数据库管理系统的内部特征,特 别是系统提供的存取方法和存储结构。

选择物理数据库设计所需参数

1️⃣ 数据库查询事务

2️⃣ 数据更新事务

3️⃣ 每个事务在各关系上运行的频率和性能要求

数据库管理系统常用存取方法

1️⃣ B+树索引存取方法

2️⃣ Hash索引存取方法

3️⃣ 聚簇存取方法

聚簇的用途

确定数据库的存储结构

确定数据库物理结构主要指确定数据的存放位置和存储结构,包括:确定关系、索引、聚簇、日志、 备份等的存储安排和存储结构,确定系统配置等。

确定数据的存放位置和存储结构要综合考虑存取时间、存储空间利用率和维护代价3个方面的因素

确定数据的存放位置基本原则

举例

六、数据库的实施和维护

数据的载入和应用程序的调试

数据库的试运行

数据库的运行和维护

七、习题解析

image-20220204231014411

image-20220204231028269

image-20220204231041679

image-20220204231054100

image-20220204231106173

image-20220204231116977

image-20220204231210575

image-20220204231142984

image-20220204231225276

image-20220204231235751

image-20220204231300457

举报

相关推荐

0 条评论