E-R 图

E-R 图简介

E-R :Entity Relationship Diagrams(实体关系模型)
E-R图:实体-联系图
E-R图可以认为是关系模型的雏形,每个实体是一张表,实体与实体之间的关系可以合并到其中一个实体中,也可以是另外一张表,关系表和相关的实体表是通过主键或外键来联系的。

E-R图3个要素:实体,属性,关系。

  1. 实体:用矩形表示,矩形框内写明实体名。

  2. 属性:用椭圆形表示,椭圆内写明属性名称,并用连线与实体连接起来。如果属性较多,为使图形更加简明,有时也将实体与其相应的属性另外单独用列表表示。

  3. 联系:用菱形表示,菱形框内写明联系名,并用连线分别与有关实体连接起来,同时在连线旁标上联系的类型。

连线:实体和属性之间、实体与联系之间、联系与属性之间用直线连接,并在直线上标注联系的类型。(注意:对于1:1的联系,要在两个实体连线方向各写1,1:n关系的,要在一的方向写1,多的方向写N;对于N:M关系的,则要在两个实体连线方向各写N,M)

E-R图设计步骤

  1. 确定所有的实体集合
  2. 选择实体集应包含的属性
  3. 确定实体集之间的联系
  4. 确定实体集的关键字,用下划线在属性上表明上表明关键字的属性组合
  5. 确定联系的类型,在用线将表示联系的菱形框联系到实体集时,在线旁注明1或N来表示联系的类型

一个实体转换为一个关系模式

实体的属性就是关系的属性,实体的码就是关系的码。
例如:将学生实体转换为关系模式:
学生(学号,姓名,性别,出生日期)
Student(SID,Sname,Sex,Birthday,Specialty

将联系转换为关系模式的方法

1:1联系

将联系与任意端实体所对应的关系模式合并,加入另一端实体的码和联系的属性。
例如:实体学校(学校编号,名称)与校长(编号,姓名)之间的任职联系是1:1的联系。

这里写图片描述

1:n联系

将联系与n端实体所对应的关系模式合并,加入1端实体的码和联系的属性。
例如:读者和读者类型实体的联系是1:n的。
这里写图片描述

Reader(RID,Rname, TypeID, Lendnum )
ReaderType(TypeID, Typename,LimitNum, LimitDays)

M:N联系

将M:N联系转换成一个关系模式。将该联系相连的各实体的码和联系本身的属性转换为关系的属性。
例如:教务管理中选课的E-R模型如图所示,学生和课程的联系是多对多的。
学生实体的码为SID,课程实体的码为CID,联系本身的属性为Grade。
注意:要将联系的属性(Grade)在图中画出,在下图中即“成绩”属性。
这里写图片描述

Student(SID,Sname,Sex,Birthday,Specialty)
Course(CID, Cname,Credit)
SC(SID, CID,Grade)

实例

1、图书借阅管理系统

1.1数据库要求提供下述服务:

(1)可随时查询书库中现有书籍的品种、数量与存放位置。所有各类书籍均可由书号惟一标识。

(2)可随时查询书籍借还情况,包括借书人单位、姓名、借书证号、借书日期和还书日期。

约定:任何人可借多种书,任何一种书可为多个人所借,借书证号具有惟一性。

(3)当需要时,可通过数据库中保存的出版社的电报编号、电话、邮编及地址等信息向相应出版社增购有关书籍。约定,一个出版社可出版多种书籍,同一本书仅为一个出版社出版,出版社名具有惟一性。

1.2数据建模:

(1)满足上述需求的E-R图如图:

这里写图片描述

(2)转换为等价的关系模式结构如下:

借书人(借书证号,姓名,单位)
图书(书号,书名,数量,位置,出版社名)
出版社(出版社名,电报编号,电话,邮编,地址)
借阅(借书证号,书号,借书日期,还书日期)

2、学生选课管理系统

2.1数据库要求提供下述服务:

(1)数据库需要有以下信息:

学生:学号、单位名称、姓名、性别、年龄、选修课程名
课程:编号、课程名、开课单位、任课教师号
教师:教师号、姓名、性别、职称、讲授课程编号
单位:单位名称、电话、教师号、教师姓名

(2)上述实体中存在如下联系:

1)一个学生可选修多门课程,一门课程可被多个学生选修。
2)一个教师可讲授多门课程,一门课程可由多个教师讲授。
3)一个单位可有多个教师,一个教师只能属于一个单位。

2.2数据建模

(1)学生选课局部E-R图如图:

这里写图片描述

(2)教师任课局部E-R图如图:

这里写图片描述

(3)合并的全局E-R图如图:

这里写图片描述

(4)该全局E-R图转换为等价的关系模式表示的数据库逻辑结构如下:

单位(单位名称,电话)
教师(教师号,姓名,性别,职称,单位名称)
课程(课程编号,课程名,单位名称)
学生(学号,姓名,性别,年龄,单位名称)
讲授(教师号,课程编号)
选修(学号,课程编号)

3.公司员工销售产品

这里写图片描述

E-R图绘制工具

1.Visio

适用对象: IT 和商务专业人员
适用事务:就复杂信息、系统和流程进行可视化处理、分析和交流。使用具有专业外观的 Office Visio 图表,促进对系统和流程的了解,深入了解复杂信息并利用这些知识做出更好的业务决策。

2.PowerDesigner

适用类型:是Sybase公司的CASE工具集
适用事务:使用它可以方便地对管理信息系统进行分析设计,它几乎包括了数据库模型设计的全过程。可以制作数据流程图、概念数据模型、物理数据模型,可以生成多种客户端开发工具的应用程序,还可为数据仓库制作结构模型,也能对团队设备模型进行控制。

3.Erwin

适用类型:数据建模工具,是关系数据库应用开发的优秀CASE工具。
适用事务:支持各主流数据库系统,其设计图支持MS office的直接拷贝。ERwin也能与CA的Model Mart集成,满足企业建模的需求。

4.SmatDraw

适用类型:商业绘图软件 适用事务:是世界上最流行的。轻松的绘制具有专业水准的商业图。