数据库第四章--数据库设计

数据库第四章--数据库设计

数据库第四章--数据库设计
数据库第四章--数据库设计
  • 数据库设计概述
    • 数据库设计方案
      • 数据库应用访问方式
      • 数据库结构模型
      • 数据库应用架构
    • 数据库结构模型
      • 概念数据模型CDM
      • 逻辑数据模型LDM
      • 物理数据模型PDM
    • 数据库开发过程
      • 需求分析阶段
      • 数据库建模设计:概念、逻辑、物理
      • 系统实现阶段
      • 系统测试阶段
  • E-R模型方法(概念、逻辑)
    • 基本建模
      • E-R模型:实体-联系模型
        • 实体Entity:描述事物的对象
        • 属性:描述实体特征的数据项
        • 标识符:标识不同实体实例的属性
        • 标识符是一个逻辑概念,主键是物理概念
        • 联系:是指实体之间的联系
        • 联系度数:联系中关联的实体数目
      • 实体-联系类型
        • 二元实体联系类型
          • 1对1
          • 1对多
          • 多对多
        • 基数:实体有多少实例与另一实体存在的数量对应关系
        • 实体参与关系:可选、强制
    • 扩展建模
      • 实体继承联系
        • 互斥性继承
        • 非互斥性继承
        • 完整继承:父实体实例必须属于子实体中的某一个
        • 非完整继承
      • 强弱实体联系
        • 强实体:被依赖的实体
        • 弱实体:对另外实体有依赖关系的实体
          • 标识符ID依赖弱实体:弱实体的标识符中含有所依赖实体的标识符
          • 非标识(非ID)依赖弱实体
  • 数据库建模设计
    • 概念数据模型
    • CDM/LDM/PDM模型转换设计
      • 数据模型元素对应关系
        • 概念数据模型:实体、属性、标识符、联系
        • 逻辑数据模型:实体、属性、标识符(Primary/Foreign)、联系
        • 物理数据模型:表、列、键、参照完整性约束
      • E-R模型到关系模型转换原理
        • 将每一个实体转换成一个关系表实体属性转换为关系表的列实体标识符转换为关系表的主键或外键
        • 将实体之间的联系转化为关系表之间的参照完整性约束
  • 数据库规范化设计
    • 函数依赖
      • 为什么需要规范化数据库设计?
        • 减少冗余数据
        • 便于实现数据完整性和实体一致性
        • 对数据高效访问
      • 函数依赖理论
        • 定义:设有一关系模式R(U), U 为关系R的属性集合,X和Y为属性U的子集。设t,s是关系R中的任意两个元组,如果t[X] = s[X],则t[Y] = s[Y]。那么称Y函数依赖于X,表示为X→Y
        • 决定因子:函数依赖的左部
        • 依赖函数:右部
      • 函数依赖的类型
        • 设X、Y是某关系的不同属性集,如X→Y,且不存在X’∈X ,使X’→Y,则Y称完全函数依赖,否则称Y部分函数依赖
        • 设X、Y、Z是某关系的不同属性集,有X→Y,Y→\X , Y→Z,若X→Z,称Z对X存在函数传递依赖
        • 设U是关系模式R的属性集,X和Y是U的子集,Z=U-X-Y,xyz表示属性集XYZ的值。对于R的关系r,在r中存在元组(x, y1, z1)和(x, y2, z2)时,也存在元组(x, y1, z2)和(x, y2, z1),那么在模式R上存在多值函数依赖
    • 关系规范化范式
      • 关系规范化:把一个有访问异常的关系分解成结构良好的关系的过程,使得这些关系有最小的冗余或没有冗余
      • 规范化范式:关系表符合特定规范化程度的模式
      • 第1范式:关系表中的属性不可再细分
      • 第2范式:满足第1范式,且消除了关系中的属性部分函数依赖
      • 第3范式:满足第2范式,且切断了关系中的属性传递函数依赖
      • 巴斯-科德范式BCNF:所有函数依赖的决定因子都是候选键
      • 第4范式:满足BCNF,且消除多值函数依赖
      • 1NF→ 2NF → 3NF→ BNCF → 4NF(关系的规范化程度依次提升)
      • 关系的规范化程度越高,关系数据库存储的冗余数据就越少,可消除的数据访问异常就越多