ER图向关系模型的转换(续)( 4.一个1:1联系可以转换为一个独立的关系模式, 也可以与任意一端对应的关系模式合并。 2)与某一端对应的关系模式合并 合并后关系的属性:加入对应关系的码和 联系本身的属性 合并后关系的码:不变 An Introduction to Database System
An Introduction to Database System E-R图向关系模型的转换(续) ⒋ 一个1:1联系可以转换为一个独立的关系模式, 也可以与任意一端对应的关系模式合并。 ◼ 2) 与某一端对应的关系模式合并 ◼ 合并后关系的属性:加入对应关系的码和 联系本身的属性 ◼ 合并后关系的码:不变
ER图向关系模型的转换(续)( 例,“管理”联系为1:1联系,可以有三种转换方法: (1)转换为一个独立的关系模式: 管理(职工号,班级号) 或 管理(职工号,班级号) (2)“管理”联系与班级关系模式合并,则只需在班 级关系中加入教师关系的码,即职工号: 班级:(班级号,学生人数,职工号 (3)“管理”联系与教师关系模式合并,则只需在教 师关系中加入班级关系的码,即班级号: 教师:(职工号,姓名,性别,职称,班级号 是否为优秀班主任) An Introduction to Database System
An Introduction to Database System E-R图向关系模型的转换(续) 例,“管理”联系为1:1联系,可以有三种转换方法: (1)转换为一个独立的关系模式: 管理(职工号,班级号) 或 管理(职工号,班级号) (2)“管理”联系与班级关系模式合并,则只需在班 级关系中加入教师关系的码,即职工号: 班级:(班级号,学生人数,职工号) (3)“管理”联系与教师关系模式合并,则只需在教 师关系中加入班级关系的码,即班级号: 教师:(职工号,姓名,性别,职称,班级号, 是否为优秀班主任)
E-R图向关系模型的转换(续) 注 从理论上讲,1:1联系可以与任意一端对应的关系模 式合并 但在一些情况下,与不同的关系模式合并效率会大 不一样。因此究竟应该与哪端的关系模式合并需要 依应用的具体情况而定 由于连接操作是最费时的操作,所以一般应以尽量 减少连接操作为目标。 例如,如果经常要查询某个班级的班主任姓名,则 将管理联系与教师关系合并更好些 An Introduction to Database System
An Introduction to Database System E-R图向关系模型的转换(续) 注意: 从理论上讲,1:1联系可以与任意一端对应的关系模 式合并。 但在一些情况下,与不同的关系模式合并效率会大 不一样。因此究竟应该与哪端的关系模式合并需要 依应用的具体情况而定。 由于连接操作是最费时的操作,所以一般应以尽量 减少连接操作为目标。 例如,如果经常要查询某个班级的班主任姓名,则 将管理联系与教师关系合并更好些
ER图向关系模型的转换(续)( 5三个或三个以上实体间的一个多元联系转换为 个关系模式 关系的属性:与该多元联系相连的各实体的 码以及联系本身的属性 日关系的码各实体码的组合 例,“讲授”联系是一个三元联系,可以将它 转换为如下关系模式,其中课程号、职工号和 书号为关系的组合码: 讲授(课程号,职工号,书号) An Introduction to Database System
An Introduction to Database System E-R图向关系模型的转换(续) ⒌ 三个或三个以上实体间的一个多元联系转换为 一个关系模式。 ◼ 关系的属性:与该多元联系相连的各实体的 码以及联系本身的属性 ◼ 关系的码:各实体码的组合 例,“讲授”联系是一个三元联系,可以将它 转换为如下关系模式,其中课程号、职工号和 书号为关系的组合码: 讲授(课程号,职工号,书号)
ER图向关系模型的转换(续)( 6.同一实体集的实体间的联系,即自联系,也可 按上述1:1、1:n和m:n三种情况分别处理。 例,如果教师实体集内部存在领导与被领导的 1:n自联系,我们可以将该联系与教师实体合 并,这时主码职工号将多次出现,但作用不同, 可用不同的属性名加以区分 教师:{职工号,姓名,性别,职称,系主任} An Introduction to Database System
An Introduction to Database System E-R图向关系模型的转换(续) ⒍ 同一实体集的实体间的联系,即自联系,也可 按上述1:1、1:n和m:n三种情况分别处理。 例,如果教师实体集内部存在领导与被领导的 1:n自联系,我们可以将该联系与教师实体合 并,这时主码职工号将多次出现,但作用不同, 可用不同的属性名加以区分: 教师:{职工号,姓名,性别,职称,系主任}