首页 百科知识 图转换为关系模型

图转换为关系模型

时间:2022-06-20 百科知识 版权反馈
【摘要】:2.5.3 ER图转换为关系模型画出E-R图的目的只是为了辅助分析实体之间的关系,因此,要完成数据库的设计就必须将E-R图转化成关系模式。首先将实体“厂长”转换为一个关系(二维表),以实体的名字“厂长”作为关系的名称,实体的关键字“职工号”作为关系的主键,为了表示的方便,主键“职工号”用下画线加以标识。

2.5.3 ER图转换为关系模型

画出E-R图的目的只是为了辅助分析实体之间的关系,因此,要完成数据库的设计就必须将E-R图转化成关系模式。其基本策略是“先转实体,再转联系”。即首先把E-R图中所有的实体转化成关系模式,然后根据实体间不同的联系方式,把联系反映在关系中。

图2-18 选修课成绩管理系统的ER图

实体转为关系模式的基本方法如下:E-R图中每个实体,都相应转换为一个关系;实体名作为关系名;实体的所有属性就是关系的属性;实体的关键字就是关系的关键字。

下面,我们详细介绍不同种类的联系转换为关系模式的方法。

1∶1联系的转换

1∶1联系的转换是最简单的一种,如图2-19所示。首先将实体“厂长”转换为一个关系(二维表),以实体的名字“厂长”作为关系的名称,实体的关键字“职工号”作为关系的主键,为了表示的方便,主键“职工号”用下画线加以标识。同时把该实体的属性作为关系的属性。以同样的方法可以完成实体“工厂”的转换。

接着,转换实体间的联系。在1∶1联系的处理中,只需要将任意一方实体的关键字和联系的属性纳入另一方实体所对应的关系中即可。因此,存在着两种转换结果,如图2-19所示。你可能发现,厂长表的关键字“职工号”出现在工厂表中,我们将职工号称为工厂表的外键。对于工厂表而言,外键职工号是一个非关键字段。

图2-19 1∶1联系的转换

1∶n联系转换

1∶n联系中的实体转换和1∶1联系转换方法相同。联系的转换方法是:将“1”方的主键纳入“n”方实体对应的关系中,同时将联系的属性也一并纳入“n”方关系中。图2-20给出了1∶n联系转换的例子,在此例中联系“属于”没有属性。同样,班级号是学生表的外键,它也是一个非关键字段。

m∶n关系转换

m∶n联系的转换方法是:一个m∶n联系单独用一个二维表来表示,与该联系相连的各实体的关键字,以及联系本身的属性均成为此表的属性,与该联系相连的各实体的关键字的组合作为此表的关键字。如图2-21所示,学号、课程号都是选修表的外键,并且这两个字段组合起来就是选修表的关键字。

图2-20 1∶n联系转换

图2-21 m∶n联系转换

三个及以上实体之间的关系

在上文中,联系的转换都只涉及两种类型的实体,在实际的应用当中,相互之间存在联系的实体往往不止两个。比如,“教师”、“课程”和“教材”这三类实体之间就有着密不可分的联系,教师授课必然要用到教材,而开设一门课程也必然需要有老师和教材的存在。三者构成了三类实体间的多对多联系,称为三元联系,这一联系将三个实体联系起来。这个三元联系的ER图画法如图2-22。

图2-22 三种类型实体间的E-R图转换为关系模式

三元联系转换为关系模式的方法与两种实体间的多对多联系的转换方法类似:一个三元联系单独用一个二维表来表示,与该联系相连的三个实体的关键字,以及联系本身的属性均成为此表的属性,与该联系相连的三个实体的关键字的组合作为此表的关键字。图2-22给出了这一联系转换成关系模式后的结果。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈