-
注意:此部分内容和软件工程的知识点重合较多,更多请点击【免费分享】软件工程核心知识点
本章较分散,各节导航如下
- (数据库系统概论|王珊)第七章数据库设计-第二节:需求分析
- (数据库系统概论|王珊)第七章数据库设计-第三节:概念结构设计
- (数据库系统概论|王珊)第七章数据库设计-第四节:逻辑结构设计
- (数据库系统概论|王珊)第七章数据库设计-第五、六节:物理结构设计和数据库的实施和维护
一:数据库设计定义
数据库设计(database design):数据库设计是指对于一个给定的应用环境,构造(设计)优化的数据库逻辑模式和物理结构,并据此建立数据库及其应用系统,使之能够有效地存储和管理数据,满足各种用户的应用需求,包括信息管理要求和数据操作要求。数据库设计的目标是为用户和各种应用系统提供一个信息基础设施和高效的运行环境
- 信息管理要求:数据库中应该存储和管理哪些数据对象
- 数据操作要求:对数据对象需要进行哪些操作
二:数据库建设及特点
数据库建设:是指数据库应用系统从设计、实施到运行与维护的全过程(可以对比软件生命周期)
(1)数据库建设基本规律
特点之一:三分技术、七分管理、十二分基础数据
- 技术:技术很重要,也是最容易实现的,因为技术在一定时期内是很稳定的
- 管理:管理相比技术更为重要,这对数据库设计有直接影响
- 数据:基础数据的地位和作用是认为最容易忽略的,数据便是数据库这幢大楼的一砖一瓦
(2)结构(数据)设计和行为(处理)设计相结合
特点之二:设计中要把数据库结构设计和对数据的处理设计密切结合起来
- 必须强调设计过程中数据库设计和应用系统设计的密切结合,并将其作为数据库设计的重要特点
- 数据库设计中一定要把结构特性和行为特性结合起来
三:数据库设计方法
主要有:
- 新奥尔良方法:将数据库设计分为若干阶段和步骤
- 基于 E-R 模型的设计方法:概念设计阶段广泛采用
- 基于 3NF 的设计方法:逻辑阶段可采用的有效方法
- ODL(Object Definition Language)方法:面向对象的数据库设计方法
- 计算机辅助设计:ORACLE Designer 2000、SYBASE PowerDesigner
四:数据库设计基本步骤
(1)6个阶段
数据库设计分为如下6个阶段:
- 需求分析
- 概念结构设计
- 逻辑结构设计
- 物理结构设计
- 数据库实施
- 数据库运行和维护
- 需求分析和概念结构设计可以独立于任何数据库管理系统进行
- 逻辑结构设计和物理结构设计与选用的数据库管理系统密切相关
(2)具体描述
需求分析阶段:进行数据库设计首先必须准确了解与分析用户需求(包括数据与处理)。需求分析是整个设计过程的基础,也是最困难和最耗费时间的一步
概念结构设计阶段:概念结构设计是整个数据库设计的关键,它通过对用户需求进行综合、归纳与抽象,形成一个独立于具体数据库管理系统的概念模型
逻辑结构设计阶段:逻辑结构设计是将概念结构转换为某个数据库管理系统所支持的数据模型,并对其进行优化
物理结构设计阶段:物理结构设计是为逻辑数据模型选取一个最适合应用环境的物理结构(包括存储结构和存取方法)
数据库实施阶段:在数据库实施阶段,设计人员运用数据库管理系统提供的数据库语言及其宿主语言,根据逻辑设计和物理设计的结果建立数据库,编写与调试应用程序,组织数据入库,并进行试运行
数据库运行和维护阶段:数据库应用系统经过试运行后即可投入正式运行。在数据库系统运行过程中必须不断地对其进行评估、调整与修改
- 在此阶段,应该把数据库的设计和对数据库中数据处理的设计紧密结合起来
(3)所使用的工具
每个阶段都要用到各种工具,各种图,这一点在软件工程中有详细介绍
五:数据库设计过程中的各级模式
数据库设计的不同阶段会形成数据库的各级模式
- 需求分析阶段:综合各个用户的应用需求
- 概念结构设计阶段:形成概念模式(E-R图)
- 逻辑结构设计阶段:将E-R图转化为具体的数据库产品所支持的数据模型,比如关系模型
- 形成逻辑模式,然后根据用户处理的要求、安全性的考虑,在基本表的基础上再建立必要的视图,形成数据的外模式
- 物理结构设计阶段:形成内模式