数据库设计(一)——数据库设计

发布时间:2020-06-06 21:08:40 来源:51CTO 阅读:396837 作者:天山老妖S 栏目:MySQL数据库

数据库设计(一)——数据库设计 一、数据库设计简介

按照规范设计,将数据库的设计过程分为六个阶段:
A、系统需求分析阶段
B、概念结构设计阶段
C、逻辑结构设计阶段
D、物理结构设计阶段
E、数据库实施阶段
F、数据库运行与维护阶段
需求分析和概念结构设计独立于任何数据库管理系统。

二、系统需求分析 1、需求分析的任务

需求分析的任务:对现实世界要处理的对象进行详细的调查,通过对原系统的了解,收集支持新系统的基础数据并对其进行处理,在此基础上确定新系统的功能。
A、调查分析用户活动
B、收集和分析需求数据,确定系统边界信息需求,处理需求,安全性和完整性需求
C、编写系统分析报告

2、需求分析的方法

需求分析有两种方法:自顶向下、自底向上
A、自顶向下
自顶向下方法从最上层的系统组织机构入手,采用逐层分解的方式分析系统。
用数据流图和数据字典描述系统
数据流图:描述输入数据到输出数据的变换过程
数据流:由一组固定成分的数据组成,代表数据的流动方向
处理:描述了输入数据到输出数据的变换
文件:用于存储数据
源或宿:存在于系统之外的人员或组织,表示系统输入数据的来源和输出数据的去向
B、自底向上

3、实例

教学管理系统
基本需求:
某学校设计学校教学管理系统,学生实体包括学号、姓名、性别、生日、民族、籍贯、简历、入学日期,每名学生选择一个主修专业,专业包括专业编号、名称、类别,一个专业属于一个学院,一个学院可以有多个专业。学院信息要存储学院号、学院名、院长。教学管理要管理课程表、学生成绩表。课程包括课程号、课程名、学分,每门课程由一个学院开设。学生选修的每门课程获得一个成绩。

三、概念结构设计 1、概念结构设计简介

概念结构设计的目标是设计数据库的E-R模型图,确认需求信息的正确和完整。具体来说就是从需求分析中找到实体,确认实体的属性、确认实体的关系,画出ER图。

2、概念结构设计的步骤

数据库设计(一)——数据库设计


数据库设计(一)——数据库设计


第一步,数据抽象与局部E-R模型设计
A、数据抽象
在多层数据流中选择一个适当层次作为设计E-R图的出发点。
确定每个局部应用包含哪些实体,实体包含哪些属性,实体之间的联系
划分实体和属性的方法
分类:将一组具有某些共同特性和行为的对象抽象为一个实体。
聚合:将对象类型的组成成分抽象为属性。
B、局部E-R模型设计
局部E-R模型设计的原则是属性必须是不可分的数据项,不能再由放弃其他属性组成;属性不能与其他实体具有联系,联系只能发生在实体之间。
为简化E-R图,凡是能作为属性对待的,尽量作为属性。
第二步,全局E-R模型设计
集成各局部E-R模型,形成全局模型。视图集成的方法有两种:
A、多元集成法:一次性将多个局部E-R图合并为一个全局E-R图。
B、二元集成法:首先集成两个重要的局部E-R图,然后用累加的方法逐步将一个新的E-R图集成进来。
合并:
合并局部E-R图,消除冲突,初步生成E-R图。合并的关键是合理消除各局部E-R图的冲突。
冲突分类如下:

数据库设计(一)——数据库设计


优化:
消除初步E-R图中不必要的冗余,生成基本的E-R图。
冗余数据:可由基本的数据导出的数据。
冗余联系:可由基本的联系导出的联系。

数据库设计(一)——数据库设计

3、实例

教学管理系统的E-R图
实体:学生、专业、学院、课程
实体表要记录的属性:
学生(学号、姓名、性别、生日、籍贯、民族、简历、入学日期)

数据库设计(一)——数据库设计


专业(专业号、专业名称、类别)
学院(学院号、学院名称、院长)
课程(课程号、课程名称、学分)

数据库设计(一)——数据库设计


教学管理ER图:

数据库设计(一)——数据库设计

四、逻辑结构设计 1、逻辑结构设计简介

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。