Part3数据库设计----2.er图设计与转换

战—13讲 数据库设计过程

老师原话:重点是一对一,一对多,多对多联系 的转换规则! 必须会。er图向关系转换 必须会!
第12讲中对实体属性联系讲的更加详细,我们教材没有这样要求,感兴趣的自学内容。

基本内容
1.数据库设计过程与设计方法

2.E- R图/IDEF1X向关系模式的转换

3.不正确数据库设计引发的问题及其解决
重点与难点
●理解数据库设计的四个过程
●理解不正确数据库设计引发的问题,为数据库理论的学习奠定问题基础
●理解不正确数据库设计引发的问题,提升数据建模与数据库设计能力

一.数据库设计的四个过程

Part3数据库设计----2.er图设计与转换

1.需求分析:

➢目标:理解企业、理解企业业务过程与数据处理流程、理解数据处理的性能需求
➢提交物:需求分析报告
➢使以下内容清楚:

  • 0企业的部门-岗位划分:不同岗位负责的各种日常管理信息表/报表
  • 0形成各种报表的基础数据表
  • 0各种数据表之间的处理关系(What–How)
  • 0围绕数据表的业务处理关系(Who- -When–Where)
  • 0尚未实施但未来可能实施的需求

➢形成数据库设计的**“源清单和“属性"清单以及相关的详细描述,尤其是注意业务规则与属性处理规则**
➢结合数据流图等辅助分析与理解

注意事项

  • 注意收集和理解:
    • 1.业务规则及其在表的处理方面 的体现
    • 2.不仅报表、单据是源,企业的 查询需求与管理需求等也是源
  • 注意命名:
    • 1.命名要规范,并且要含义明确
    • 2.尤其要注意类似于“数量”这样的多 含义属性,比如“计划数量”“采购数 量”“到货数量”“装配数量”“完工 数量”“销售数量”“发货数量”
  • 注意:准确理解对属性的业务规则,尤其是约束规则
    • 例如:成绩只能取“优秀”“良好”“中等”“及 格”“不及格”这五个值;
    • 例如: 工资只能升不能降, 年龄大于15且小于23岁等;
    • 例如:编码属性的编码规则;
    • 例如:分类属性的分类标准及分类值等;
    • 例如:属性的处理规则,如填写规则、计算规则等
  • 小结

Part3数据库设计----2.er图设计与转换

2.概念数据库设计

➢目标:进一步深入理解企业,对信息源进行抽象,发现信息(属性)之间的内在本质联系,这些本质联系可能隐藏于需求分析得到的信息源中。
➢提交物:概念数据库设计报告
➢使以下内容清楚:

  • 0各种实体的发现、划分和定义
  • 0各种实体属性的发现、分析和定义
  • 0各种实体联系的发现、分析和定义
  • 0外部视图(模式)和概念视图(模式)的定义

➢用统一的表达方法,如E-R模型/IDEF1X模型给出描述;不仅绘制出来,而且绘制正确;

(1)两种设计思路

Part3数据库设计----2.er图设计与转换

局部E-R图设计

Part3数据库设计----2.er图设计与转换

全局E-R图设计

Part3数据库设计----2.er图设计与转换

(2)消除冲突

➢属性冲突

  • -属性域的冲突:属性的类型、取值范围不同

    如不同学校的学号编码方式不同

  • -属性取值单位冲突

    如重量分别采用磅、干克

➢结构冲突

  • -同一对象在不同应用中的抽象不同

    如职工在某应用中是实体 ,在另一应用中则抽象为属性

  • -同一实体在不同E R图中属性组成不同

  • -实体之间的联系在不同E R图中呈现不同的类型

➢命名冲突

  • -同名异义:不同意义的对象具有相同的名字
  • 异名同义:同-意义的对象具有不同的名字
全局E-R图的优化

Part3数据库设计----2.er图设计与转换

(3)相关结果性内容示意

Part3数据库设计----2.er图设计与转换

Part3数据库设计----2.er图设计与转换

3.Part3数据库设计----2.er图设计与转换

Part3数据库设计----2.er图设计与转换

5.注释: O:实体的占有属性,1:实体的继承属性,K:实体的主键属性

Part3数据库设计----2.er图设计与转换

6.小结

Part3数据库设计----2.er图设计与转换

3.逻辑数据库设计

➢目标:用指定DBMS要求的模式描述方法,给出概念数据库的逻辑模式描述。
➢提交物:逻辑数据库设计报告
➢使以下内容清楚:

  • 将E-R/IDEF1X转换成逻辑模式
  • 遵循关系范式的设计原则
  • 也要注意折中,但折中时需要提示应用开发者或使用者可能存在的问题
  • 外模式和概念模式的定义

➢用关系模型、网状模型或层次模型规定的模式描述方法进行描述

(2)E-R图/IDEF1X图向关系模式的转换

Part3数据库设计----2.er图设计与转换

1.转换规则

基本转换规则

基本转换规则:实体属性-关键字的转换

Part3数据库设计----2.er图设计与转换

基本转换规则:复合属性的转换

Part3数据库设计----2.er图设计与转换

基本转换规则:多值属性的转换

Part3数据库设计----2.er图设计与转换

基本转换规则:联系的转换

Part3数据库设计----2.er图设计与转换

Part3数据库设计----2.er图设计与转换

Part3数据库设计----2.er图设计与转换

弱实体转换

Part3数据库设计----2.er图设计与转换

泛化与具体化实体的转换

Part3数据库设计----2.er图设计与转换

Part3数据库设计----2.er图设计与转换

示例“

Part3数据库设计----2.er图设计与转换

多元联系的转换

Part3数据库设计----2.er图设计与转换

示例:

Part3数据库设计----2.er图设计与转换

IDEF1X转换

Part3数据库设计----2.er图设计与转换

不正确设计数据库引发的问题

➢冗余:数据库中存在大量冗余
➢非受控冗余
●当数据发生改变时,如何使冗余数据同步更新?

Part3数据库设计----2.er图设计与转换

➢受控冗余:如Table中的外键(继承其他Table中的键值)

Part3数据库设计----2.er图设计与转换

➢插入异常:当-名新同学入学时,尚未指定系,则因系的有关信息不完整,便无法输入到数据库中。
➢删除异常:当四系所有同学被删除后,则四系的有关信息则随之丢失。

避免不正确设计:

Part3数据库设计----2.er图设计与转换

Part3数据库设计----2.er图设计与转换

小结

Part3数据库设计----2.er图设计与转换

4.物理数据库设计

《数据库系统之数据库 管理系统实现技术》将 介绍此部分相关内容

➢目标:结合指定DBMS物理数据库管理方法,给出概念数据库的物理模式描述。
➢提交物:物理数据库设计报告
➢使以下内容清楚:

  • DBMS选型
  • 确定数据库的存储结构,文件类型:如定长文件、
  • 不定长文件;堆文件、散列文件或B-Tree文件等
  • 用Triggers,设计一些完整性控制约束
  • 确定数据库的高效访问方式(索引访问,直接访问… …
  • 评估和设置磁盘空间需求

Part3数据库设计----2.er图设计与转换

本讲回顾

Part3数据库设计----2.er图设计与转换