五.数据库设计与ER模型
5.1.数据库系统生存期(*7)
1.简述:
- 规划、需求分析、概念设计、逻辑设计、物理设计、实现、运行维护
2.规划:
- 系统调查:
- 可行性分析:
- 确定数据库系统总目标:
3需求分析:
- 分析用户活动,产生业务流程图:
- 确定系统范围,产生系统关联图:
- 分析用户活动涉及的数据,产生数据流程图:
- 分析系统数据,产生数据字典:
4概念设计
- 数据抽象:
- 设计局部概念模型:
- 将局部概念模型综合成全局概念模型
5.逻辑设计
- 把概念模型转换成逻辑模型
- 设计外模型
- 设计应用程序与数据库的接口
- 评价模型
- 修正模型
6.物理设计
- 存储记录结构设计
- 确定数据存放位置
- 存取方法设计
- 完整性和安全性考虑
- 程序设计
7数据库实现
- 用DDL定义数据结构
- 组织数据入库:对于中大型系统,设计一个数据输入子系统
- 编制和调试应用程序
- 数据库试运行:功能、性能测试
8.数据库运行和维护(DBA完成)
- 数据库转储与恢复
- 数据库安全性、完整性控制
- 数据库性能的监督、分析和改进
- 数据库的重组织与重结构
5.2ER模型
1ER模型基本元素:
- 实体,联系,属性
2.实体、联系、属性
实体 | 有:实体、实体集、实体类型。 ER模型中用方框表示,内注明实体名字。 |
联系(动词) | 有:联系、联系集、联系类型 ER模型中用菱形表示,并用线段将其与相关的实体链接起来 |
属性 | 实体的某一特性。能够唯一标识实体的属性(集)称为“实体标识符” ER模型中用椭圆形表示,画线的属性为标识符 |
3属性分类
- 简单属性、复合属性:
- 单值属性、多值属性:多值=>n新单值表示,或者=>新的实体
- 存储属性、派生属性:派生属性可从其他属性推导。用虚线椭圆表示
- 可为空值的属性
4联系的设计
4.1联系的元数:一个联系涉及的实体集个数,称为该联系的元数或度数。(n元联系)
4.2联系类型的约束:
a基数约束:
- 映射基数:实体集E1与E2之间有二元联系,则参与一个联系的实体数目称为映射基数。
- 对于二元联系,可能映射基数有1:1、1:n、n:m
- 具体实现时,映射基数指出最小最大...
b参与约束:
- 完全参与、部分参与:
- ER模型中,完全参与用双线边表示
5ER模型的操作
- 水平分裂:教师=>男、女教师
- 垂直分裂:经常变化实体=>实体,固定不变属性=>另一实体
6采用ER模型的数据库概念设计
6.1设计局部ER模型
- 确认局部结构范围:
- 定义实体:
- 定义联系:
- 分配属性:原则不可再分解
6.2设计全局ER模型
- 确认公共实体类型:
- 合并局部ER模型:
- 消除冲突: 属性、结构、命名
6.3全局ER模型优化
- 合并实体类型:
- 消除冗余属性
- 消除冗余联系
7.例
5.3ER模型到关系模型的转换
1ER图转换成关系模式集的算法(步骤)
- 实体类型转换、方框
- 联系类型转换、菱形
- n元关系的转换
2采用ER模型的逻辑设计步骤
- 导出初始关系模式集
- 规范化处理
- 模式评价
- 模式修正
- 设计子模式
5.4增强ER模型
1弱实体、强实体:
- 一个实体以另一个实体的存在为前提。联系只能1:1或1:n
2子类实体、超(父)类实体:
- 可继承。相同标识符
3不相交约束、完备性约束
- 不相交:d表示。重叠:o表示
- 整体特化:双线表示。部分特化:单线表示
5.5 其他
模糊(抽象)实体可=>多个属性,在某联系中产生。
5.n某些联系
学校、校长间:1:1
系、老师间:1:n
学生、课程间:m:n
运动员排名:1:1
职工、领导间:1:n反之n:1
零件间组成:m:n
仓库、商品、商店:
*库存管理信息系统
*公司车队信息系统
*人事管理信息系统
*旅游管理信息系统