数据库,什么是E-R图?如何画出E-R图?都需要哪些要素?

数据库,什么是E-R图?如何画出E-R图?都需要哪些要素?,第1张

E-R图是相对于概念模型而言的,在数据库中有严格的界定,是P.P.S.Chen于1976年提出的实体-联系方法(Entityt-Relationship Approach).该方法用E-R图来描述现实世界的概念模型.

E-R图提供了表示实体型\属性\和联系的方法

▲实体型:用矩形表示.

▲属性:用椭圆形表示.

▲联系:用菱形表示.

注:我们用的是<数据库系统概论>第三版,你找本书看看.相信你的能力..

方法/步骤

首先要了解ER图的核心要素:实体,属性,关系;实体就是一个个对象,比如猫;属性就是实体所有的某个属性,比如猫的性别;关系就是实体和实体之间或者实体内部之间的关系。

其次我们要了解ER图中怎么表示1中描述的三个核心要素:在ER图中,矩形代表实体,椭圆代表属性,菱形代表关系,各个形状之间用线段连接。

下面我们就以一个例子来一起画一个ER图,首先打开visio,我这里用的是2007,打开“新建”--->“常规”--->“基本框图”,新建一个空的界面,如下图所示:

我们在这张空的图里要表现如下的关系,对象1:学生(姓名,学号,系别);对象2:课程(课程名,课程编号,学分);关系:选课。我们先来画对象1,添加一个矩形框,三个椭圆框,如下图所示:

我用同样的方法,我们来建第二个对象课程,也是放一个矩形,三个椭圆形,然后用线把他们连接起来。

然后我们就来建这两个对象之间的关系,像图中加一个菱形,在菱形里写上选课两个字。如果没有菱形,可以加一个正方形然后旋转一下。

以上就将一个学生,选课的简单的ER图做好了,但是这只是简单的图。更专业的还可以这样做,打开“新建”--->“软件和数据库”--->“数据库模型图”,创建一个数据库模型图

然后拖进去一个实体,选中拖进去的实体,在下面的属性里定义好实体信息以及列,如下图所示:

以同样的方式定义课程实体,然后建关系表,拖进关系线段,连接两个实体,注意两头都是红色才是真正的连接起来了。会自动在关系属性里建立起连接,如下图所示:

到目前为止关系ER图就画完了,这种图ER图算是比较正规的一种了,比上面画的那一种要正规许多。当然,如果还想在专业化一些,可以用PowerDesign来绘制ER图。

如何画数据库ER图

数据库设计中重要的一环首先就是概念设计,也就是说,要从实际问题出发,排除非本质的东西,抽象出现实的数据结构之客观规律——即画出数据结构图——ER图。这是数据库设计的重点,也是数据库设计的难点。

那么,如何才能正确地反映客观现实,将ER图画好呢?

答案是,必须进行正确的需求分析。那么如何进行需求分析呢?需求分析一般有两种方法,一种是结构化分析(SA),一种是面向对象分析(OOA).通过这两种方法的实施以后,都可以得到比较正确的ER图。现在以下面的实际问题为例,通过结构化分析(SA)方法的应用,讲述如何得到比较正确的ER图。

( 一 ) 校务管理系统

在要建立的系统中,有以下功能:

1.管理老师的功能:录入老师情况(姓名.地址.所教课程), 老师缺课记录(名字.时间.原因. 课程)

2.管理学生的功能: 录入学生情况 ( 姓名 . 所选课程 . 成绩 )

3.教务主任的功能 : 查询统计 1: 教师情况 2: 学生总成绩 3: 学生平均成绩

要求:

1)用结构化方法画出系统顶层图、 0 层图,数据字典。

2)画出该系统的数据模型ER图。

一、结构化分析的需求分析

1)  分析实际情况

根据实际情况,我们得到一下情况:

(一)教师任课流程:

(二)学生选择课程流程:

2)画数据流图

(一、)顶层数据流图

(二)0层数据流图

3)画数据字典DD(略)和软件初始结构图

1基本数据=学生基本信息|教师基本信息|课程基本信息|教室基本信息

2教师任课信息=教师任课数据|教师考勤信息

3学生选课请求和成绩=学生选课请求|学生成绩

学生基本信息=学号+姓名+性别+年龄+专业+班级

。。。。。。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9609878.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存