ER图转换成关系模式集的算法
联系类型的转换:不同的情况做不同的处理。
二元联系类型的转换:
①若实体间联系是1:1,可以在两个实体类型转换成的两个关系模式中任意一个关系模式的属性中加入另一个关系模式的键和联系类型的属性。
②若实体间联系是1:n,则在n端实体类型转换成的关系模式中加入1端实体类型的键和联系类型的属性。
③若实体间联系是m:n,则将联系类型也转换成关系模式,其属性为两端实体类型的键加上联系类型的属性,而键为两端实体键的组合。
例:假定每个学生选修若干门课程,且每个学生每选一门课只有一个成绩,每个教师只担当一门课的教课,一门课由若干教师任教。“学生"有属性:学号、姓名、年龄、性别。“教师"有属性:员工号、教师姓名、职称。“课程"有属性:课程号、课程名。
问:1)试画出ER图,注明属性和联系种类。2)将E-R图变换成关系模型,并注明主码
答:
1)ER图:
以课程为参考:一门课程由多个老师任教,所以在【课程--教师】关系线上的教师那头标注x
以教师为参考:一个教师只教一门课程,所以在在【课程--教师】关系线上的课程那头标注1
其他的实体间的联系以此类推,进行标注,完成ER图
2)
学生关系模型:学号、姓名、年龄、性别
课程关系模型:课程号、课程名
教师关系模型:员工号、教师姓名、职称、课程号
选修关系模型:学号、课程号、成绩