前言

《数据库原理及应用教程(第4版 | 微课版)》第6章:“数据库设计”的学习提纲。


6.1 数据库设计概述

6.1.1 数据库设计的任务、内容和特点

数据库设计的内容:

  • 结构/静态模型设计:概念设计,逻辑设计,物理设计
  • 行为/动态模型设计

6.1.2 数据库设计方法简述

  • 直观设计/手工试凑法
  • 规范设计/新奥尔良法
  • 计算机辅助设计法
  • 自动化设计法

规范设计/新奥尔良法:

  • 基于实体-联系(E-R)模型法
  • 基于第三范式(3NF)法
  • 基于视图法
  • 实体分析法
  • 属性分析法
  • 基于抽象语义法

6.1.3 数据库设计的步骤

  1. 系统需求分析
  2. 概念结构设计:独立于软件(数据库管理系统)和硬件;需求 -> 概念模型——概念模式

概念模式示例:实体-联系(E-R)图

  1. 逻辑结构设计:与软件(数据库管理系统)耦合;概念模型 -> 数据模型——关系模式

关系模式示例:学生(学号(主码),姓名)

  1. 物理结构设计:与硬件耦合
  2. 数据库实施
  3. 数据库运行与维护

第1和2步面向需求
第3和4步面向数据库管理系统
第5和6步面向实现


6.2 系统需求分析

6.2.1 需求分析的任务

  1. 调查分析用户活动
  2. 收集和分析需求数据,确定系统边界
  3. 编写系统分析报告/需求规范/格说明书

系统边界:判断哪些对象由人工完成,哪些对象由计算机自动完成


6.2.2 需求分析的方法

  • 自顶向下/结构化分析(SA):最简单实用
  • 自底向上

自顶向下/结构化分析(SA)方法使用的工具:

  • 数据流图(DFD)
  • 数据字典(DD)

数据表示:数据字典(DD)
数据处理:判定表,判定树


6.3 概念结构设计

6.3.1 概念结构设计的必要性

需求 -> 概念模型——概念模式


6.3.2 概念模型的特点

  • 语义表达能力丰富
  • 易于交流和理解
  • 易于修改和扩充
  • 易于向各种数据模型转换

6.3.3 概念模型的E-R表示方法

实体-联系(E-R)模型是概念模型。

E-R模型/图/方法的组成:

  • 实体:矩形框
  • 属性:椭圆形框
  • 联系:菱形框
  • 关系:无向边
  • 其他:标注,联系的类型

联系的类型:

  • 实体内/实体与属性的联系:一对一,一对多,多对多
  • 实体间/实体与实体的联系:一对一,一对多,多对多

6.3.4 概念结构设计的方法与步骤

方法:

  • 自顶向下:先全局,后局部
  • 自底向上:先局部,后全局;最常用
  • 逐步扩张:先核心,后全局
  • 混合策略:先自顶向下,后自底向上

步骤:

  1. 数据抽象:设计局部E-R模型/用户视图
  2. 视图集成:集成各局部E-R模型为全局E-R模型

数据抽象的方法:

  • 分类:抽象实体
  • 聚集:抽象属性

数据抽象的步骤:

  1. 分类
  2. 聚集
  3. 设计局部E-R模型

视图集成的方法:

  • 多元集成法:一次集成各局部E-R模型为全局E-R模型
  • 二元集成法:分多次,每次集成两个局部E-R模型为全局E-R模型;最常用

视图集成的步骤:

  1. 合并:合并各局部E-R模型,消除冲突,生成初步E-R模型

冲突:属性冲突,命名冲突,结构冲突
属性冲突:属性值域冲突,属性取值单位冲突
命名冲突:同名异义,异名同义
结构冲突:同一对象在不同应用中抽象不同:可能为实体或属性,同一实体在不同应用中属性组成不同:可能数量或次序不同,同一联系在不同应用中类型不同:可能为一对一、一对多或多对多

  1. 优化:由初步E-R模型,消除冗余,生成基本E-R模型

6.4 逻辑结构设计

6.4.1 逻辑结构设计的任务和步骤

任务:概念模型 -> 数据模型——关系模式

关系模式示例:学生(学号(主码),姓名)

步骤:

  1. 初始关系模式设计
  2. 关系模式规范化
  3. 模式的评价与改进

6.4.2 初始关系模式设计

转换原则:

  • 实体 -> 关系模式
  • 联系 -> 关系模式
  • 属性 -> 属性

步骤:

  1. 实体转换为关系模式,转换属性
  2. 联系转换为关系模式,转换属性
  3. 处理特殊情况

6.4.3 关系模式规范化

步骤:

  1. 确定范式级别
  2. 实施规范化处理:至少为第三范式(3NF)

6.4.4 模式评价与改进

模式评价:

  • 功能评价
  • 性能评价

模式改进的方法:

  • 合并:合并关系模式以减少连接操作
  • 分解

分解的类型:

  • 水平分解:分解元组以减少操作的记录数
  • 垂直分解:分解属性以减少操作的字段数

6.5 物理结构设计

步骤:

  1. 确定物理结构:存储结构,存取方法
  2. 评价物理结构:时间效率,空间效率

6.5.1 确定物理结构

步骤:

  1. 设计存储记录的结构:如字段的类型和长度
  2. 设计数据访问的方法:如索引
  3. 设计数据存储的位置:如存储的磁盘
  4. 设计系统的配置:如数据库的大小

6.5.2 评价物理结构


6.6 数据库实施

步骤:

  1. 建立实际数据库结构
  2. 装入数据
  3. 应用程序编码与调试
  4. 数据库试运行
  5. 整理文档

6.6.1 建立实际数据库结构

使用数据定义语言(DDL)


6.6.2 装入数据——略


6.6.3 应用程序编码与调试——略


6.6.4 数据库试运行

内容:

  • 功能测试
  • 性能测试

6.7 数据库运行和维护

内容:

  • 维护数据库的安全性与完整性
  • 监测并改善数据库性能
  • 重新组织和构造数据库

数据库设计步骤的总结

方法:规范设计/新奥尔良法

1.系统需求分析

方法:自顶向下/结构化分析(SA)
工具:数据流图,数据字典,判定表/树

(1)调查分析用户活动

(2)收集和分析需求数据,确定系统边界

(3)编写系统分析报告/需求规范/格说明书

2.概念结构设计

方法:自底向上
工具:实体-联系(E-R)图

(1)数据抽象

方法:分类,聚集

①分类

②聚集

③设计局部E-R图

(2)视图集成

方法:二元集成法

①合并

②优化

  1. 逻辑结构设计

(1)初始关系模式设计

①实体转换为关系模式,转换属性

②联系转换为关系模式,转换属性

③处理特殊情况

(2)关系模式规范化

①确定范式级别

②实施规范化处理

(3)模式的评价与改进

  • 模式评价:功能评价,性能评价

  • 模式改进:合并,分解:水平分解,垂直分解

4.物理结构设计

(1)确定物理结构

①设计存储记录的结构

②设计数据访问的方法

③设计数据存储的位置

④设计系统的配置

(2)评价物理结构

  • 时间效率
  • 空间效率

5.数据库实施

(1)建立实际数据库结构

(2)装入数据

(3)应用程序编码与调试

(4)数据库试运行

  • 功能测试
  • 性能测试

(5)整理文档

6.数据库运行和维护

  • 维护数据库的安全性与完整性
  • 监测并改善数据库性能
  • 重新组织和构造数据库

总结

《数据库原理及应用教程(第4版 | 微课版)》第6章:“数据库设计”的学习提纲。


参考资料

  • 《数据库原理及应用教程(第4版 | 微课版)》主编:陈志泊;副主编:许福,韩慧;编著:崔晓晖,路贺俊,阮豫红

作者的话

  • 感谢参考资料的作者/博主
  • 作者:夜悊
  • 版权所有,转载请注明出处,谢谢~
  • 如果文章对你有帮助,请点个赞或加个粉丝吧,你的支持就是作者的动力~
  • 文章在描述时有疑惑的地方,请留言,定会一一耐心讨论、解答
  • 文章在认识上有错误的地方, 敬请批评指正
  • 望读者们都能有所收获