一、引言
如何将数据库概念结构设计的结果,即用E-R模型表示的概念模型转化为关系数据库模式。
E-R模型由实体、属性以及实体间的联系三个要素组成
将E-R模型转换为关系数据库模式,实际上就是要将实体及实体联系转换为相应的关系模式,转换应遵循相应的规则,并确定这些关系模式的主键及外键,利用外键来体现实体间的联系。最后,还要对转换后的关系模式进行优化
二、实体的转换
1、转换的规则是一个实体要单独转换为一个关系模式。实体的属性就是关系的属性,实体的关键字就是关系的主键。
2、举例:例如将一个学生实体转换为一个学生关系模式
(1)关系名为学生,包含学号、姓名、性别属性,学号为主键、
三、实体间联系的转换
1、根据实体间联系的类型,联系可单独转换为一个关系模式,也可不单独转换为一个关系模式
2、在转换后的关系模式中,应体现实体间的联系以及联系本身的属性
3、1:1联系的转换
假设班长被抽象为实体,而不是班级的属性,则班长和班级之间具有1:1的联系。对于1:1的联系,既可单独对应一关系模式,也可以不单独对应一关系模式
(1)若将该联系单独转换为一个关系模式
- 该关系的属性则由参与联系的各实体的关键字以及该联系本身的属性构成
- 每个实体的关键字均可作为该关系的主键
- 且每个实体的关键字均为该关系模式的外键
则班级和班长之间1:1的联系可转换为一个关系模式,可命名为负责人,具有班级号和学号两个属性,均可作为该关系的主键,均为该关系的外键,分别对应班级关系的主键班级号和班长关系的主键学号
(2)如果联系不对应一关系模式
- 可将联系合并到与该联系相关的任意一端实体所对应的关系模式中,需要再被合并的关系模式中,增加联系本身的属性以及与联系相关的另一实体的关键字
- 新增属性后,原关系模式的主键不变
- 增加的另一端实体的关键字为该关系模式的外键
对于班长和班级之间的1:1联系,则可在班级关系模式中,增加一个班长学号属性 ,应是外键,对应班长关系的主键学号,主键仍是班级号</