数据库系统概论——逻辑结构设计

数据库系统概论——逻辑结构设计

E-R图转换关系模型与转换

实体型转换为关系模式

实体的属性、码转换为关系模式的属性和码

实体型一对一联系

实体型一对一联系可以转换为一个独立的关系模式,也可以与相连的任意一端对应的关系模式合并,若与某个关系模式合并,则在该关系模式的属性中加入另一端关系模式的码和联系的属性,合并后关系模式的码不变

实体一对多联系

  • 转换为独立的关系模式

关系模式的属性为与该联系相连的各个实体的码和联系本身的属性,关系模式的码为 n n n端的实体的码

  • 与n端对应的关系模式合并

合并后关系模式的属性为 n n n端关系模式的属性、 1 1 1端关系的码和联系本身的属性,合并后关系模式的码不变

实体多对多联系

关系的属性为与该联系相连的各实体的码及联系本身的属性

关系的码为各实体码的组合

具有相同码的关系模式合并

  • 目的

减少系统中关系的个数

  • 合并方法

将其中一个关系模式的全部属性加入到另一个关系模式中,并去掉其中的同义属性,适当调整属性的次序

数据模型的依赖

优化数据模型的方法

  • 确定数据依赖

按需求分析阶段所得的语义,分别写出每个关系模式内部各属性之间的数据依赖以及不同关系模式属性之间数据依赖

  • 各个关系模式之间的数据依赖进行极小化处理,消除冗余联系

  • 按照数据依赖的理论对关系模式进行分析

检查是否存在部分函数依赖、传递函数依赖、多值函数依赖,确定各个关系模式分别属于第几范式

  • 按需求分析实际情况

进行合并或分解,包括水平分解和垂直分解

优化的要求

权衡响应时间和潜在问题

设计用户子模式

数据库模式指的是全局模式,考虑系统全局应用的要求、时间效率、空间效率、易维护等,用户子模式指的是视图机制,考虑局部应用的特殊需求和用户体验

更符合用户习惯的别名

消除命名冲突,使数据库系统中同一关系和属性具有唯一名字

针对不同级别的用户定义不同的视图以提高系统安全性

让不同的人看到不同的信息

简化用户对系统的使用

在某些局部应用中需要经常使用一些很复杂的查询以方便用户,将复杂的查询定义为视图,规避复杂查询

鸣谢

数据库系统概论(第5版)
数据库系统概念(原书第6版)

最后

  • 由于博主水平有限,不免有疏漏之处,欢迎读者随时批评指正,以免造成不必要的误解