首页 > 知识点讲解
       E-R模型设计
知识路径: > 信息系统工程技术知识 > 计算机技术知识与网络知识 > 数据库系统 > 
被考次数:1次     被考频率:低频率     总体答错率:55%     知识难度系数:     
相关知识点:28个      
        本知识点主要考查E-R图的画法,各实体之间的关系,如何消除冲突,E-R图向关系模式的转换等。
               E-R图的画法
               E-R模型(实体联系模型)简称E-R图,它是描述概念世界,建立概念模型的实用工具。E-R图包括如下三个要素。
               (1)实体(型):用矩形框表示,框内标注实体名称。
               (2)属性:用椭圆形表示,并用连线与实体连接起来。
               (3)实体之间的联系:用菱形框表示,框内标注联系名称,并用连线将菱形框分别与有关实体相连,并在连线上注明联系类型。
               例如,下图就是一个教学系统的E-R图(为了简单起见,省略了部分实体的属性和联系的属性)。
               
               某教学系统E-R图
               E-R图中的联系归结为三种类型:
               (1)一对一联系(1:1)。设AB为两个实体集。若A中的每个实体至多和B中的一个实体有联系,反过来,B中的每个实体至多和A中的一个实体有联系,称ABBA是1:1联系。注意,1:1联系不一定都是一一对应的关系,可能存在着无对应。例如,在上图中,一个班只有一个班主任,一个班主任不能同时在其他班再兼任班主任,由于老师紧缺,某个班的班主任也可能暂缺。
               (2)一对多联系(1:n)。如果A实体集中的每个实体可以和B中的几个实体有联系,而B中的每个实体和A中的一个实体有联系,那么AB属于1:n联系。例如,在上图中,一个班级有多个学生,而一个学生只能编排在一个班级,班级与学生属于一对多的联系。
               (3)多对多联系(m:n)。若实体集A中的每个实体可以和B中的多个实体有联系,反过来,B中的每个实体也可以与A中的多个实体有联系,称ABBAm:n联系。例如,在上图中,一个学生可以选修多门课程,一门课程由多个学生选修,学生和课程间存在多对多的联系。
               必须强调指出,有时联系也有属性,这类属性不属于任一实体,只能属于联系。
               E-R图的集成
               在数据库的概念结构设计过程中,先设计各子系统的局部E-R图,设计过程可分为以下几个步骤:
               (1)确定局部视图的范围。
               (2)识别实体及其标识。
               (3)确定实体间的联系。
               (4)分配实体及联系的属性。
               各子系统的局部E-R图设计好后,下一步就是将所有的分E-R图综合成一个系统的总体E-R图,一般称为视图的集成。视图集成通常有两种方式:
               (1)多个局部E-R图一次集成。这种方式比较复杂,做起来难度较大。
               (2)逐步集成,用累加的方式一次集成两个局部E-R图。这种方式每次只集成两个局部E-R图,可以降低复杂度。
               由于各子系统应用所面临的问题不同,且通常是由不同的设计人员进行局部视图设计,这就导致各个局部E-R图之间必定会存在许多不一致的问题,称之为冲突。因此合并分E-R图时并不能简单地将各个局部E-R图画到一起,而是必须着力消除各个局部E-R图中的不一致,以形成一个能为全系统中所有用户共同理解和接受的统一的概念模型。
               各局部E-R图之间的冲突主要有三类:
               (1)属性冲突。包括属性域冲突和属性取值冲突。属性冲突理论上好解决,只要换成相同的属性就可以了,但实际上需要各部门协商,解决起来并不简单。
               (2)命名冲突。包括同名异义和异名同义。处理命名冲突通常也像处理属性冲突一样,通过讨论和协商等行政手段加以解决。
               (3)结构冲突。包括同一对象在不同应用中具有不同的抽象,以及同一实体在不同局部E-R图中所包含的属性个数和属性排列次序不完全相同。对于前者的解决办法是把属性变换为实体或实体变换为属性,使同一对象具有相同的抽象。对于后者的解决办法是使该实体的属性取各局部E-R图中属性的并集,再适当调整属性的次序。
               另外,实体间的联系在不同的局部E-R图中可能为不同的类型,其解决方法是根据应用的语义对实体联系的类型进行综合或调整。
               在初步的E-R图中,可能存在一些冗余的数据和实体间冗余的联系。冗余数据和冗余联系容易破坏数据库的完整性,给数据库维护增加困难,应当予以消除。消除冗余的主要方法为分析方法,即以数据字典和数据流图为依据,根据数据字典中关于数据项之间逻辑关系的说明来消除冗余。
               E-R图向关系模式的转换
               E-R模型向关系模式的转换规则如下:
               (1)一个实体转换为一个关系模式,实体的属性就是关系的属性,实体的码(关键字)就是关系的码。
               (2)一个1:1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。如果转换为一个独立的模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,每个实体的码均是该关系的候选键。如果与某一端实体对应的关系模式合并,则需要在该关系模式的属性中加入另一个关系模式的码和联系本身的属性。
               (3)一个1:n联系可以转换为一个独立的关系模式,也可以与任意n端对应的关系模式合并。如果转换为一个独立的模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为n端实体的码。如果与n端实体对应的关系模式合并,则需要在该关系模式的属性中加入1端关系模式的码和联系本身的属性。
               (4)一个m:n联系转换为一个独立的关系模式,与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合。
               (5)三个以上实体间的一个多元联系可以转换为一个独立的关系模式,与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合。
               另外,还有4种情况是需要特别注意的:
               (1)多值属性的处理。如果E-R图中某实体具有一个多值属性,则应该进行优化,把该属性提升为一个实体。或者在转化为关系模式时,将实体的码与多值属性单独构成一个关系模式。
               (2)BLOB型属性的处理。典型的BLOB是一张图片或一个声音文件,由于它们的容量比较大,必须使用特殊的方式来处理。处理BLOB的主要思想就是让文件处理器(如数据库管理器)不去理会文件是什么,而是关心如何去处理它。因此,从优化的角度考虑,应采用的设计方案是将BLOB字段与关系的码独立为一个关系模式。
               (3)派生属性的处理。因为派生属性可由其他属性计算得到,因此,在转化成关系模式时,通常不转换派生属性。
               (4)在对象-关系数据模型中,本章的“关系模式”就对应“类”,关系模式的属性就对应类的属性。
 
 相关知识点:
 
软考在线指南
优惠劵及余额
在线支付
修改密码
下载及使用
购买流程
取消订单
联系我们
关于我们
联系我们
商务合作
旗下网站群
高级资格科目
信息系统项目管理师 系统分析师
系统架构设计师 网络规划设计师
系统规划与管理师
初级资格科目
程序员 网络管理员
信息处理技术员 信息系统运行管理员
中级资格科目
系统集成项目管理工程师 网络工程师
软件设计师 信息系统监理师
信息系统管理工程师 数据库系统工程师
多媒体应用设计师 软件评测师
嵌入式系统设计师 电子商务设计师
信息安全工程师
 

本网站所有产品设计(包括造型,颜色,图案,观感,文字,产品,内容),功能及其展示形式,均已受版权或产权保护。
任何公司及个人不得以任何方式复制部分或全部,违者将依法追究责任,特此声明。
本站部分内容来自互联网或由会员上传,版权归原作者所有。如有问题,请及时联系我们。


工作时间:9:00-20:00

客服

点击这里给我发消息 点击这里给我发消息 点击这里给我发消息

商务合作

点击这里给我发消息

客服邮箱service@rkpass.cn


京B2-20210865 | 京ICP备2020040059号-5 |京公网安备 11010502032051号 | 营业执照 | Copyright ©2000-2023 All Rights Reserved 软考在线版权所有