关于由ER模型转换为关系模型的方法和步骤

本文详细阐述了从实体关系(ER)模型转换为关系模型的过程,涉及强实体、弱实体、关系、多值属性及特殊化的处理方法,包括创建新表、设置键、包含属性和组件等步骤。
摘要由CSDN通过智能技术生成

1.    For each strong entity E:

o        Create a new table.

o        Include as its columns, all the simple attributes and simple components of the composite attributes of E.

o        Identify the primary key and the alternate keys. Do not include any multi-valued attribute as a key. If the only unique field of an entity is a multi-valued attribute, introduce an artificial primary key field.

2.    For each weak entity W that is associated with only one 1:1 identifying owner relationship:

o        Identify the table T of the owner entity type.

o        Include as columns of T, all the simple attributes and simple components of the composite attributes of W.

3.    For each weak entity W that is associated with a 1:N or M:N identifying relationship, or participates in more than one relationship:

o        Create a new table T.

o        Include as its columns, all the simple attributes and simple components of the composite attributes of W.

o        Form the primary key of T as follows:

§         In the case of a 1:N owner relationship, by including as a foreign key in T, the primary key of the owner entity. The primary key of T is the combination of W's partial key and the foreign key.

§         In the case of an M:N owner relationship, create a new column that will hold unique values. (In this case, the association between the weak entity and its owner entity will be specified in Step 6.)

4.    For each binary 1:1 relationship R:

o        Identify the tables S and T of the participating entity types.

o        Choose S (preferably the one with total participation).

o        Include as a foreign key in S, the primary key of T.

o        Include as Columns of S, all the simple attributes and simple components of the composite attributes of R.

5.    For each binary 1:N relationship R:

o        Identify the table S (at the N-side) and T of the participating entities.

o        Include as a foreign key in S, the primary key of T.

o        Include as columns of S, all the simple attributes and simple components of composite attributes of R.

6.    For each N-ary relationship (including binary N:M relationship) R:

o        Create a new table T.

o        Include as columns of T, all the simple attributes and simple components of composite attributes of R.

o        Include as a foreign keys, the primary keys of the participating (strong or weak) entity types.

o        Specify as the primary key of T, the list of foreign keys.

7.    For each multi-valued attribute A:

o        Create a new table T.

o        Include as columns of T, the simple attribute or simple components of the attribute A.

o        In table T, include as a foreign key, the primary key of the entity or relationship type that has A.

o        Specify as the primary key of T, the foreign key and the columns corresponding to A.

8.    For each specialization with disjoint subclasses:

o        Create a new table Ti for each subclass Si.

o        Include as columns of Ti, the simple attributes and simple component attributes of the superclass.

o        Include as columns of Ti, the simple attributes and simple component attributes specific to Si.

o        Identify the primary key.

9.    For each specialization with overlapping subclasses:

o        Create a new table O for the superclass.

o        Include as columns of O, the simple attributes and the simple component attributes of the superclass.

o        Identify its primary key and alternate keys.

o        Create a new table Ti for each subclass Si.

o        Include as columns of Ti, the simple attributes and simple component attributes specific to Si.

o        Include as a foreign key in Ti (to be part of the primary key of Ti), the primary key of O.

ER转换关系模型步骤如下: 1.将ER图中的实体转换关系模型中的表,每个实体对应一个表,表的名称为实体的名称,表的属性为实体的属性。 2.将ER图中的关系转换关系模型中的表,每个关系对应一个表,表的名称为关系的名称,表的属性为关系的属性。 3.将ER图中的多对一关系转换关系模型中的外键,将多的一方的主键作为外键添加到一的一方的表中。 4.将ER图中的多对多关系转换关系模型中的中间表,中间表包含两个外键,分别指向多的两个表。 下面是一个示例: 假设有一个ER图,包含两个实体:学生课程,以及一个关系:选课。其中,学生实体包含属性:学号、姓名、性别;课程实体包含属性:课程号、课程名称、学分;选课关系包含属性:成绩。 将ER转换关系模型步骤如下: 1.将学生实体转换关系模型中的表,表的名称为“学生”,表的属性为“学号”、“姓名”、“性别”。 2.将课程实体转换关系模型中的表,表的名称为“课程”,表的属性为“课程号”、“课程名称”、“学分”。 3.将选课关系转换关系模型中的表,表的名称为“选课”,表的属性为“成绩”。 4.将学生选课之间的关系转换关系模型中的外键,将学生表中的“学号”作为外键添加到选课表中。 5.将课程选课之间的关系转换关系模型中的外键,将课程表中的“课程号”作为外键添加到选课表中。 最终的关系模型如下: 学生表(Student): | 学号 | 姓名 | 性别 | | ---- | ---- | ---- | | | | | 课程表(Course): | 课程号 | 课程名称 | 学分 | | ------ | -------- | ---- | | | | | 选课表(SC): | 学号 | 课程号 | 成绩 | | ---- | ------ | ---- | | | | |
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值