关于C语言中e - r图的详解

  

<>强e - r,英文缩写为(实体关系图)也称实体——联系图。

  

提供了表示实体类型,属性和联系的方法,用来描述现实世界的概念模型。

  

下面就讲详解e - r图,如下:

  

关于C语言中e - r图的详解

  

<强>从上面的的图可以看到一个完整的e - r图有四个部分:

  

1。矩形框,矩形表示实体型、矩形框内写明实体名;

  

2。椭圆框,椭圆表示实体的属性,并用无向边将其与相应的实体型连接起来。

  

3。菱形框,菱形表示实体型之间的联系,在菱形框内写明联系名,

  

4。联系线,实体与属性之间,实体与联系之间,联系与属性之间用直线相连,有单向和双向线两种,同时在线旁标上联系的类型(1:1,1:n或m: n)。

  

<>强构图要素

  

构成e - r图的3个基本要素是实体型,属性和联系,其表示方法为:

  

<强> 1。实体

  

一般认为,客观上可以相互区分的事物就是实体,实体可以是具体的人和物,也可以是抽象的概念与联系。关键在于一个实体能与另一个实体相区别,具有相同属性的实体具有相同的特征和性质。用实体名及其属性名集合来抽象和刻画同类实体。在e - r图中用矩形表示,矩形框内写明实体名,比如学生张三,学生李四都是实体。如果是弱实体的话,在矩形外面再套实线矩形。

  

<强> 2。属性

  

实体所具有的某一特性,一个实体可由若干个属性来刻画。属性不能脱离实体,属性是相对实体而言的。在e - r图中用椭圆形表示,并用无向边将其与相应的实体连接起来,比如学生的姓名,学号,性别,都是属性。如果是多值属性的话,在椭圆形外面再套实线椭圆。如果是派生属性则用虚线椭圆表示。

  

<强> 3。联系

  

联系也称关系,信息世界中反映实体内部或实体之间的关联。实体内部的联系通常是指组成实体的各属性之间的联系;实体之间的联系通常是指不同实体集之间的联系。在e - r图中用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(1:1,1:n或m: n)。比如老师给学生授课存在授课关系,学生选课存在选课关系。如果是弱实体的联系则在菱形外面再套菱形。

  

<强>设计步骤

  

<强>一、调查分析

  

(1)选择局部应用在需求分析阶段,通过对应用环境和要求进行详尽的调查分析,用多层数据流图和数据字典描述了整个系统。

  

设计分e - r图的第一步,就是要根据系统的具体情况,在多层的数据流图中选择一个适当层次的(经验很重要)数据流图,让这组图中每一部分对应一个局部应用,我们即可以以这一层次的数据流图为出发点,设计分e - r图。一般而言,中层的数据流图能较好地反映系统中各局部应用的子系统组成,因此人们往往以中层数据流图作为设计分e - r图的依据。

  

(2)逐一设计分e - r图每个局部应用都对应了一组数据流图,局部应用涉及的数据都已经收集在数据字典中了。现就是要将这些数据从数据字典中抽取出来,参照数据流图,& lt; 1祝辞标定局部应用中的实体,& lt; 2祝辞实体的属性,标识实体的码,& lt; 3祝辞确定实体之间的联系及其类型(1:1,1:n, m: n)。

  

下面是对& lt; 1祝辞,& lt; 2祝辞和& lt; 3祝辞步骤的具体说明:

  

,,& lt; 1比;标定局部应用中的实体现实世界中一组具有某些共同特性和行为的对象就可以抽象为一个实体。对象和实体之间是“成员”的关系,例如在学校环境中,可以把张三,李四,王五等对象抽象为学生实体。对象类型的组成成分可以抽象为实体的属性。组成成分与对象类型之间是“是”的关系,例如学号,姓名,专业,年级等可以抽象为学生实体的属性。其中学号为标识学生实体的码。

  

,,& lt; 2比;实体的属性,标识实体的码实际上实体与属性是相对而言的,很难有截然划分的界限。同一事物,在一种应用环境中作为属“性”,在另一种应用环境中就必须作为“实体”。一般说来,在给定的应用环境中:一个,属性不能再具有需要描述的性质。即属性必须是不可分的数据项。b,属性不能与其他实体具有联系。联系只发生在实体之间。

  

,,& lt; 3比;确定实体之间的联系及其类型(1:1,1:n, m: n)。根据需求分析,要考察实体之间是否存在联系,有无多余联系。

关于C语言中e - r图的详解