1. 需求分析
理解企业、企业业务过程、数据处理流程、数据处理性能需求。
- 源清单
- 属性清单
2. 概念数据库设计
需求 -> 概念模型(E-R图、IDEF1X图)
3.逻辑数据库设计
概念模型->逻辑模型:
- E-R图->关系模式:
- 实体 -> 关系:
实体的属性 -> 关系的属性
实体的关键字 -> 关系的关键字
复合属性 -> 分量属性或复合属性本身作为关系的属性
多值属性 -> 将多值属性和实体的关键字组成一个新的关系
弱实体(从属实体) -> 属性要包含强实体的关键字
泛化实体、具体化实体 -> 具体化实体属性要包含泛化实体关键字。(若泛化实例是具体化实例的全部,可不创建泛化实例的关系) - 实体间的联系 -> 关系的属性(外键)or新关系
部分参与(0…1) -> 新关系,属性为双方关键字
全部参与(1…1) -> 将一方的关键字作为另一方的属性
一对多 -> 将单方的关键字作为多方的属性
多对多 -> 新关系,属性为双方关键字
多元联系 -> 新关系,属性为所有实体的关键字(实体关键字不可为空),或新增一个属性作为关键字(实体关键字可为空);多个二元联系
- IDEF1X图 -> 关系模型:
将实体转换为关系即可,实体间联系已包含在实体中。 - 问题:(数据库设计理论)
- 受控冗余(不利于更新数据):将关系拆分成两个关系,用外键联系
- 插入异常(缺少关键字或属性时无法插入):
- 删除异常
4. 物理数据库设计
创建数据库/表,确定物理存储空间和物理存储方式
- DBMS选型
- 数据库的存储结构
- 触发器(trigger)设计完整性控制约束
- 数据库高效访问方式
- 磁盘空间
- 用户视图和安全访问规则
- 建立索引
- 备份和恢复
- ……