数据库系统原理
  • 数据库系统原理
  • 引言
    • 数据库系统概述
  • 关系模型介绍
    • 关系数据库结构
    • 数据库模式
    • 关系代数
      • 选择运算
      • 投影运算
      • 笛卡尔运算
      • 连接运算
      • 集合运算
      • 其他运算
  • SQL介绍
    • SQL语言分类
    • SQL数据类型
    • SQL数据库操作
    • SQL数据表操作
    • SQL数据操纵语言
    • SQL数据查询语言
    • 集合运算
    • 聚集函数
  • 中级SQL
    • 连接查询
    • 内连接
    • 外连接
    • 交叉连接和自连接
    • 视图
    • 完整性约束
    • SQL用户和授权
  • 高级SQL
    • 函数
    • 存储过程
    • 触发器
  • ER模式数据库设计
    • 数据库设计过程概览
    • 需求分析
    • 实体-联系模型
      • 复杂属性
      • 映射基数和弱实体集
    • 将E-R图转换为关系模式
    • E-R模型设计
  • 关系数据库设计
    • 数据库设计规范化
    • 函数依赖理论
    • 关系范式
  • 半结构化数据
    • 半结构化数据
  • 应用程序开发
    • ADO.NET访问数据库技术
    • 断开模式数据查询
    • 连接模式数据更新
  • 数据存储结构
    • 磁盘
    • 文件的存储
    • 文件的逻辑结构
    • 文件组织
  • 索引
    • 索引基本概念
    • B树索引
    • B+树索引
    • MySQL索引的基本语法
    • 联合索引
  • 查询处理
    • 查询处理概述
  • 查询优化
    • 查询优化概述
    • 查询树的启发式优化(代数优化算法)
  • 事务
    • 事务的概念
    • 事务的特性
    • MySQL事务处理
    • 可串行化
  • 并发控制
    • 并发控制概述
    • 封锁
    • 两阶段封锁协议封锁
    • 多粒度封锁
    • 活锁和死锁
    • 基于时间戳排序的并发控制
    • 乐观控制法
  • 恢复系统
    • 数据库恢复概述
    • 数据库恢复的实现技术
    • 基于检查点的数据库恢复
Powered by GitBook
On this page
  • 转换的一般规则
  • 1. 将概念结构转换为关系模型
  • 2. 合并各个E-R图,生成初步E-R图
  • 3. 消除不必要的冗余,设计基本E-R图
  • 4. 码原则
  1. ER模式数据库设计

将E-R图转换为关系模式

Previous映射基数和弱实体集NextE-R模型设计

Last updated 4 months ago

任务:将基本E-R模型转换为DBMS所支持的数据模型

关系型逻辑结构设计的步骤:

  1. 将概念结构转换为关系模型

  2. 优化模型

  3. 设计适合DBMS的子模式

转换的一般规则

  1. 一个实体型转换为一个关系模式

  2. 一个1:1联系可转换为一个独立的关系模式,也可与任一端对应的关系模式合并。

  3. 一个1:n联系可转换为一个独立的关系模式,也可与n端对应的关系模式合并。

  4. 一个m:n联系转换为一个关系模式。

  5. 三个或三个以上实体间的多元联系可转换为一个关系模式

  6. 相同码的关系模式可合并

1. 将概念结构转换为关系模型

  • 绘制各实体之间的联系

  • 标注联系的映射基数

2. 合并各个E-R图,生成初步E-R图

合并的过程实际上是一个发现冲突和解决冲突的过程

合并冲突有:

  1. 属性冲突

    属性值类型、取值范围发生冲突

  2. 命名冲突

    同名异义、异名同义

  3. 结构冲突

    • 同一对象在不同视图中有不同抽象

    • 同一实体在不同视图中属性组成不同

    • 相同实体间联系在不同视图中呈现不同类型

3. 消除不必要的冗余,设计基本E-R图

冗余的数据是指可由基本数据导出的数据,冗余的联系是指可由其他联系导出的联系

  • 用分析法消除冗余数据

    注意:并不是所有的冗余都必须消除,有时为了提高效率,不得不以冗余为代价

  • 利用关系规范化理论来消除冗余联系

    • 确定局部E-R图实体之间的函数依赖

    • 求F的最小依赖集Fm,求其差集,即D=F-Fm

  • 逐一考察D中每一函数依赖,确定是否为冗余,若是就去掉

4. 码原则

一个实体型转换为一个关系模式,实体的属性就是关系的属性,实体的码就是关系的码。

一个联系转换为一个关系模式,与该联系相连的各实体的码以及联系的属性转换为该关系的属性。该关系的码有五种情况:

  • 若联系是1:1,则每个实体的码均是该关系的候选码

  • 若联系是1:n,则关系的码是n端实体的码

  • 若联系是m:n,则关系的码是参加联系的诸实体的码的集合。

  • 若联系是三个或三个以上的实体的一个多元联系,可以转换为一个关系模式,与该多元联系相连的各实体的码以及联系本身的属性均转换为一个关系模式,而关系的码是各实体码的组合

  • 具有相同码的关系模式可以合并。