过程描述={处理过程名,说明,输入:{数据流},输出:{数据流}}。
4.3 概念结构设计
4.3.1概念结构设计方法
设计概念结构通常有四类方法如下:
⑴ 自顶向下。即首先定义全局概念结构的框架,然后逐步细化;
⑵ 自底向上。即首先定义各局部应用的概念结构,然后将他们集成起来,得到全局概念结构;
⑶ 逐步扩张。首先定义最重要的核心概念结构,然后向外扩充,以滚雪球的方式逐步生成其他概念结构,直至总体概念结构;
⑷ 混合策略。即将自顶向下和自地向上相结合,用自顶向下策略设计一个全局概念结构的框架,以它为骨架集成自底向上策略中设计的各局部概念结构。
4.3.2概念模型设计
在概念模型设计中,主要是对E-R图进行设计。在E-R图设计中,首先要设计分E-R图,然后再对总E-R图进行设计。由于各个局部所面向的问题不同,这就导致各个分E-R图之间必定会存在许多不一致的问题,称之为冲突。因此合并分E-R图并不能简单地将各个分E-R图画到一起,而是必须合理消除各分E-R图中的不一致,以形成一个能为全系统中所有用户共同理解和接受的统一的概念模型,是合并E-R图的主要工作和关键。由分E-R图合成总体E-R图的规则,画出完整的工资管理系统的完整E-R图,如图4.2所示。
图4.2完整E-R图
4.4 逻辑结构设计
4.3.2逻辑结构设计思想
从理论上讲,设计逻辑结构应该选择最适于相应概念结构的数据模型,然后支持这种数据模型的各种DBMS进行比较,从中选出最合适的DBMS。但实际情况往往是已给定了某种DBMS,设计人员没有选择的余地。目前DBMS产品一般支持关系、网状、层次三种模型中的某一种,对某一种数据模型,各个机器系统又有许多不同的限制,提供不同的环境与工具。所以设计逻辑结构时一般要分三步进行,如图4.3所示:
●将概念结构转换为一般的关系、网状、层次模型;
●将转换来的关系、网状、层次模型向DBMS支持下的数据模型转换;
●对数据模型进行优化。
图4.3 逻辑结构设计时的三个步骤
逻辑结构设计采用关系模型转换概念结构,将E-R图依照规则转换为关系模型,为了进一步提高数据库应用系统的性能,再将转换后的关系模型进行优化,确定是否要对某些模式进行合并或分解,为物理设计提供最优的处理。
4.3.3 E-R图向关系模型的转换
关系模型的逻辑结构是一组关系模式的集合。E-R图则是由实体,实体的属性和实体间的联系三个要素组成。所以将E-R图转换为关系模型实际上就是要将实体,实体的属性和实体间的联系转换为关系模式。转换原则如下:
(1)实体类型的转换:将每个实体类型转换成一个关系模式,实体的属性就是关系模式的属性,实体的码就是关系的码。
(2)联系类型的转换,根据不同的情况做不同的处理。
若实体间的联系是1:1的,可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,每个实体的码均是该关系的候选码。如果与某一端实体对应的关系模式合并,则需要在该关系模式的属性中加入另一个关系模式的码和联系本身的属性。
若实体间的联系1:N的,可以转换为一个独立的关系模式,也可以与N端对应的关系模式合并。如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为N端实体的码。如果与N端对应的关系模式合并,则将一方的码传到多方去作为多方的一个非主属性。
若实体间的联系是M:N的,可转换为一个独立的关系模式,与该联系相连的各实体的码以及联系本身的属性