数据库 第15讲.ppt
文本预览下载声明
第15讲 数据库设计 教学目标:使学生了解和掌握数据库设计的内容、方法和具体步骤 教学内容:数据库的逻辑设计、物理设计、数据库的实施、运行和维护 教学重点:逻辑设计 教学难点:实体、属性和联系转换成关系模式 教学方法:多媒体演示 举例法 教学时间:2学时 教学过程: 15.1 逻辑结构设计 15.1.1 逻辑结构设计的任务和步骤 概念结构设计阶段得到的E-R模型是用户的模型,它独立于任何一种数据模型,独立于任何一个具体的DBMS。为了建立用户所要求的数据库,需要把上述概念模型转换为某个具体的DBMS所支持的数据模型。数据库逻辑设计的任务是将概念结构转换成特定DBMS所支持的数据模型的过程。从此开始便进入了“实现设计”阶段,需要考虑到具体的DBMS的性能、具体的数据模型特点。 从E-R图所表示的概念模型可以转换成任何一种具体的DBMS所支持的数据模型,如网状模型、层次模型和关系模型。这里只讨论关系数据库的逻辑设计问题,所以只介绍E-R图如何向关系模型进行转换。 一般的逻辑设计分为以下三步(如图15.1所示): (1) 初始关系模式设计; (2) 关系模式规范化; (3) 模式的评价与改进。 图15.1 关系数据库的逻辑设计 15.1.2 初始关系模式设计 1.转换原则 概念设计中得到的E-R图是由实体、属性和联系组成的,而关系数据库逻辑设计的结果是一组关系模式的集合。所以将E-R图转换为关系模型实际上就是将实体、属性和联系转换成关系模式。在转换中要遵循以下原则: (1) 一个实体转换为一个关系模式,实体的属性就是关系的属性,实体的键就是关系的键。 (2) 一个联系转换为一个关系模式,与该联系相连的各实体的键以及联系的属性均转换为该关系的属性。该关系的键有三种情况: ①如果联系为1:1,则每个实体的键都是关系的候选键; ②如果联系为1: n ,则n端实体的键是关系的键; ③如果联系为n : m,则各实体键的组合是关系的键。 2.具体做法 (1) 把每一个实体转换为一个关系 首先分析各实体的属性,从中确定其主键,然后分别用关系模式表示。例如,以图6.21的E-R模型为例,四个实体分别转换成四个关系模式: 学生(学号,姓名,性别,年龄) 课程(课程号,课程名) 教师(教师号,姓名,性别,职称) 系(系名,电话) 其中,有下划线者表示是主键。 (2) 把每一个联系转换为关系模式 由联系转换得到的关系模式的属性集中,包含两个发生联系的实体中的主键以及联系本身的属性,其关系键的确定与联系的类型有关。 例如,还以图14.21的E-R模型为例,四个联系也分别转换成四个关系模式: 属于(教师号,系名) 讲授(教师号,课程号) 选修(学号,课程号,成绩) 拥有(系名,学号) (3) 特殊情况的处理 三个或三个以上实体间的一个多元联系在转换为一个关系模式时,与该多元联系相连的各实体的主键及联系本身的属性均转换成为关系的属性,转换后所得到的关系的主键为各实体键的组合。 例如,图15.2表示供应商、项目和零件三个实体之间的多对多联系,如果已知三个实体的主键分别为“供应商号”,“项目号”与“零件号”,则它们之间的联系“供应”可转换为关系模式,其中供应商号,项目号,零件号为此关系的组合关系键。 供应(供应商号,项目号,零件号,数量) 图15.2 多个实体之间的联系 15.1.3 关系模式规范化 应用规范化理论对上述产生的关系的逻辑模式进行初步优化,以减少乃至消除关系模式中存在的各种异常,改善完整性、一致性和存储效率。 规范化理论是数据库逻辑设计的指南和工具,规范化过程可分为两个步骤:确定规范式级别,实施规范化处理。 1.确定范式级别 考查关系模式的函数依赖关系,确定范式等级,逐一分析各关系模式,考查是否存在部分函数依赖,传递函数依赖等,确定它们分别属于第几范式。 2.实施规范化处理 确定范式级别后,利用第4章的规范化理论,逐一考察各个关系模式,根据应用要求,判断它们是否满足规范要求,可用已经介绍过的规范化方法和理论将关系模式规范化。 综合以上数据库的设计过程,规范化理论在数据库设计中有如下几方面的应用: (1) 在需求分析阶段,用数据依赖概念分析和表示各个数据项之间的联系。 (2) 在概念结构设计阶段,以规范化理论为指导,确定关系键,消除初步E-R图中冗余的联系。 (3) 在逻辑结构设计阶段,从E-R图向数据模型转换过程中,用模式合并与分解方法达到规范化级别。 15.1.4 模式评价与改进 1.模式评价 关系模式的规范化不是目的而是手段,数据库设计的目的是最终满足应用需求。因此,为了进一步提高数据库应用系统的性能,还应该对规范化后产生的关系模式进行评价、改进,经过反复多次的尝试和比较,最后得到
显示全部