- 1、本文档共44页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
CH_数据库建模(E-R模型)_-节.ppt
E-R模型转化方法 一对多或一对一联系集的转化 可不转化为单独的关系模式,而采用下列方法转化: 若A到B联系集为一对多联系,则在由B(多方)转化的关系模式中增加A(一方)的主码属性作为参照A主码的外码,同时将联系属性也放入由B(多方)转化的关系模式中。 例如,联系集聘用(Engage)为实体集学院(Institute)与实体集教师(Teacher)之间的一对多联系集。 可转化为: Teacher (teacherNo, tearcherName, title, degree, hireDate, instituteNo) 若A到B联系集为一对一联系,则将某一方的主码属性增加到另一方实体集所转化的关系模式中去。 E-R模型转化方法 标识联系集的转化 不需转化为任何关系模式 复合属性转化方法 应为每个子属性创建一个单独的属性,而不是为复合属性自身创建一个单独的属性。 例如,由实体集学生Student转化而来的关系模式为: Student (studentNo, studentName, sex, birthday, province, city, street) address属性被其复合属性province, city, street代替。 E-R模型转化方法 多值属性转化方法 创建一个新的关系模式,其属性为多值属性所在的实体集(或联系集)的主码属性和该多值属性对应的属性组成,主码为全部属性。 设M为多值属性,M对应的属性集为A;E为M所在的实体集 (或联系集),且E的主码为属性集{b1, b2, …, bn},则由M转化的关系模式定义如下: 关系模式名:M; 属性集:A ? {b1, b2, …, bn}; 主码:A ? {b1, b2, …, bn}; 外码:参照关系E的主码属性b1, b2, …, bn。 例如,Student的电话号码phoneNumber为多值属性,关系模式为: phoneNumber (studentNo, teleNumber) ——可以将多值属性建模为弱实体集! E-R模型转化方法 类层次转化两种方法: 父类实体集和所有的子类实体集分别转化为单独的模式。其中,父类实体集对应的关系模式属性为父类实体集的属性(即公共属性);而各子类实体集对应的模式由该子类实体集的特殊属性和父类实体集的主码属性组成,各子类实体集的主码与父类实体集的主码相同。 只将所有的子类实体集转化为关系模式,其属性由父类实体集的公共属性和各子类实体集的特殊属性组成。 E-R模型转化方法 例如,按第1种方法,父类实体集Student和子类实体集Undergraduate、Graduate可转化为3个关系模式: Student (studentNo, studentName, sex, birthday, province, city, street) Undergraduate (studentNo, interest) Graduate (studentNo, direction) 按第2种方法,则只转化为2个关系模式: Undergraduate (studentNo, studentName, sex, birthday, province, city, street, interest ) Graduate (studentNo, studentName, sex, birthday, province, city, street, direction) ——各自的优缺点分别是什么? E-R模型转化方法 聚合的转化方法: 聚合是一种抽象。 内层联系集、外层联系集都是按其映射基数决定是否需要单独转化为一个独立的关系模式(多对多联系集才需要); 外层联系集的主码根据映射基数不同分别由内层联系集(即联系实体集)的主码、外层实体集的主码按不同方式产生。 如,由学生与课程之间的多对多的选课(Enroll)联系集(联系属性为score) ,以及联系实体集选课(Enroll)与教师之间的多对一的录入成绩(Record)联系集(联系属性为recordDate)共同转化而成的关系模式为: Enroll (studentNo, courseNo, cClassNo, score, TeacherNo, recordDate) 聚合的转化方法 A B r1 C r2 r1.attr r2.attr A (A.key, A.other) B (B.key, B.other) r1 (A.key, B.key, r1.attr) C (C.key, C.other) r2 (A.key, B.key, C.key, r2.attr) A B r1 C r2 r1.attr r2.attr A
文档评论(0)