1、什么是E-R图

E-R图即实体-联系图(Entity Relationship Diagram),是指提供了表示实体型、属性和联系的方法,用来描述现实世界的概念模型。E-R方法:是“实体-联系方法”(Entity-Relationship Approach)的简称。它是描述现实世界概念结构模型的有效方法。
实体联系模型,实体关系模型或实体联系模式图(ERD)是由美籍华裔计算机科学家陈品山(Peter Chen)发明,是概念数据模型的高层描述所使用的数据模型或模式图,它为表述这种实体联系模式图形式的数据模型提供了图形符号。这种数据模型典型的用在信息系统设计的第一阶段;比如它们在需求分析阶段用来描述信息需求和/或要存储在数据库中的信息的类型。但是数据建模技术可以用来描述特定论域(就是感兴趣的区域)的任何本体(就是对使用的术语和它们的联系的概述和分类)。在基于数据库的信息系统设计的情况下,在后面的阶段(通常叫做逻辑设计),概念模型要映射到逻辑模型如关系模型上;它依次要在物理设计期间映射到物理模型上。注意,有时这两个阶段被一起称为”物理设计”。

2、E-R图的基本要素

通常,使用实体-联系图(entity-relationship diagram)来建立数据模型。可以把实体-联系图简称为ER图,相应地可把用ER图描绘的数据模型称为ER模型。ER图中包含了实体(即数据对象)、关系和属性等3种基本成分,通常用矩形框代表实体,用连接相关实体的菱形框表示关系,用椭圆形或圆角矩形表示实体(或关系)的属性,并用直线把实体(或关系)与其属性连接起来。例如,图1是某学校教学管理的ER图。
人们通常就是用实体、联系和属性这3个概念来理解现实问题的,因此,ER模型比较接近人的习惯思维方式。此外,ER模型使用简单的图形符号表达系统分析员对问题域的理解,不熟悉计算机技术的用户也能理解它,因此,ER模型可以作为用户与分析员之间有效的交流工具。
实体型(Entity):具有相同属性的实体具有相同的特征和性质,用实体名及其属性名集合来抽象和刻画同类实体;在E-R图中用矩形表示,矩形框内写明实体名;比如学生张三丰、学生李寻欢都是实体。如果是弱实体的话,在矩形外面再套实线矩形。
属性(Attribute):实体所具有的某一特性,一个实体可由若干个属性来刻画。在E-R图中用椭圆形表示,并用无向边将其与相应的实体连接起来;比如学生的姓名、学号、性别、都是属性。如果是多值属性的话,再椭圆形外面再套实线椭圆。如果是派生属性则用虚线椭圆表示。
联系(Relationship): 数据对象彼此之间相互连接的方式称为联系,也称为关系。联系可分为以下 3 种类型:
(1) 一对一联系 (1 ∶ 1)
例如,一个部门有一个经理,而每个经理只在一个部门任职,则部门与经理的联系是一对一的。
(2) 一对多联系 (1 ∶ N)
例如,某校教师与课程之间存在一对多的联系“教”,即每位教师可以教多门课程,但是每门课程只能由一位教师来教【见图1】。
(3) 多对多联系 (M ∶ N)
例如,图1表示学生与课程间的联系(“ 学 ”)是多对多的,即一个学生可以学多门课程,而每门课程可以有多个学生来学。联系也可能有属性。例如,学生 “ 学 ” 某门课程所取得的成绩,既不是学生的属性也不是课程的属性。由于 “ 成绩 ” 既依赖于某名特定的学生又依赖于某门特定的课程,所以它是学生与课程之间的联系 “ 学 ”的属性.

3、实例 图书借阅管理系统

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

(1)可随时查询书库中现有书籍的品种、数量与存放位置。所有各类书籍均可由书号惟一标识。
(2)可随时查询书籍借还情况,包括借书人单位、姓名、借书证号、借书日期和还书日期。
约定:任何人可借多种书,任何一种书可为多个人所借,借书证号具有惟一性。
(3)当需要时,可通过数据库中保存的出版社的电报编号、电话、邮编及地址等信息向相应出版社增购有关书籍。
约定,一个出版社可出版多种书籍,同一本书仅为一个出版社出版,出版社名具有惟一性。

3.2数据建模:

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

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

借书人(借书证号,姓名,单位)

图书(书号,书名,数量,位置,出版社名)

出版社(出版社名,电报编号,电话,邮编,地址)

借阅(借书证号,书号,借书日期,还书日期)

4、E-R图绘制工具

这里就简单介绍4种,供大家参考

1.Visio

1.1适用对象: IT 和商务专业人员

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

2.PowerDesigner

2.1适用类型:是Sybase公司的CASE工具集

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

3.Erwin

3.1适用类型:数据建模工具,是关系数据库应用开发的优秀CASE工具。

3.2适用事务:支持各主流数据库系统,其设计图支持MS office的直接拷贝。ERwin也能与CA的Model Mart集成,满足企业建模的需求。

4.SmatDraw

4.1适用类型:商业绘图软件

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

实体关系图E-R图(Entity Relationship Diagram)相关推荐

  1. E-R图(Entity Relationship Diagram实体联系图)

    解释: E-R图也称实体-联系图(Entity Relationship Diagram),提供了表示实体类型.属性和联系的方法,用来描述现实世界的概念模型. 构图要素: 矩形框:表示实体,在框中记入 ...

  2. 实体关系 (ER) 图的几种不同风格的符号

    什么是 ER 图? 实体关系 (ER) 图是一种流程图,用于说明"实体"(如人.对象或概念)如何在系统中相互关联.ER 图最常用于设计或调试软件工程.商业信息系统.教育和研究领域的 ...

  3. 孔雀东南飞用mysql存储_PowerDesigner使用建议(完整版) 用实体关系图进行数据库建模...

    1.Powerdesigner使用建议 1.1业务规则的使用(Business Rule) 对于一些业务逻辑可能出现在多个数据表中,建议封装成Business Rule,这样便于业务逻辑的重新使用,也 ...

  4. mysql 11关系图_用实体关系图进行数据库建模(PD11+Visio)

    用实体关系图进行数据库建模 (ccidnet阿良@仙人掌工作室 2001年08月14日) 一.概述 很可能你现在正在规划一个数据库驱动的网站:而且几乎可以肯定的是,你一定已经浏览过数据库驱动的网站.过 ...

  5. Dynamics 365: 推荐几个XrmToolBox中创建ER(Entity Relationship)图的插件

    有时我们可能会需要描述系统中实体之间的关系,那么我们可以使用工具来生成ER图.下面为大家介绍几个在XrmToolBox中可以用来生成ER图的插件: Entity Relation Diagram Cr ...

  6. 数据库 - 建模:实体关系图(ERD)

    数据库 - 建模:实体关系图(ERD) 草拟实体及其关系的常用方法. 我们来看一个公司数据库的例子 实体关系图 实体关系模型,也称为实体关系(ER)图,是实体(将成为您的表)及其相互关系的图形表示. ...

  7. mysql e r图_mysql数据库E-R图

    E-R图也称实体-联系图(Entity Relationship Diagram),提供了表示实体类型.属性和联系的方法,用来描述现实世界的概念模型. 它是描述现实世界关系概念模型的有效方法.是表示概 ...

  8. Entity Framework 实体关系总结:one-to-one, one-to-many, many-to-many

    通过 Entiy Framework实践系列 文章,理了理 Entity Framework 的实体关系. 为什么要写文章来理清这些关系?"血"的教训啊,刚开始使用 Entity ...

  9. Entity Framework 实体关系总结(转)

    通过 Entiy Framework实践系列文章,理了理 Entity Framework 的实体关系. 为什么要写文章来理清这些关系?"血"的教训啊,刚开始使用 Entity F ...

最新文章

  1. python反射实例化_Python类反射机制使用实例解析
  2. (转)WebSocket的原理
  3. 高德地图-搜索服务-POI搜索
  4. MariaDB exists 学习
  5. php文件夹转换网页,PHP转换文件夹下所有文件的编码 适合发布网站的其他编码版本...
  6. python -pymysql的操作
  7. STL之涉及到的算法
  8. 浅谈Tarjan缩点(分析+模板)
  9. JS:ES6-9 初识Set与Map
  10. 阿迪达斯asp.net sql购物商城计算机设计网站作品
  11. 渐进式Web应用程序居然是Web开发的未来
  12. 【图像去噪】基于matlab GUI均值+中值+空间+高斯滤波图像去噪【含Matlab源码 763期】
  13. macos13 Ventura虚拟机安装无网络问题
  14. luckySheet在线编辑excel及遇到的问题
  15. Linux中/dev/ram是什么?
  16. vimdiff对比文件夹
  17. Martingale - Python 模拟加倍下注
  18. ES(elasticsearch)搜索引擎安装和使用
  19. 陈晨博士|可见光通信LiFi技术简介
  20. [转载]阿米巴经营中的人才培养

热门文章

  1. iPhone开发 获取系统时间 星期 年 月 日 时 分 秒
  2. 全球及中国机器视觉光源行业市场调查及投资可行性研究报告2022-2028年
  3. linux26内核,基于AT91RM9200与LINUX2.6.26内核的嵌入式平台开发全过程
  4. 联通不断发短信-尊敬的用户请回复以下编码办理业务:599
  5. 浅析我对Web(淘宝网)导航栏的深入理解
  6. 【饭谈】:开发说他要是不写bug,测试就会失业了。
  7. ArcGIS如何进行自动矢量化操作
  8. 【C# 教程系列第 11 篇】什么是抽象类、抽象方法
  9. 解决html图片空隙留白问题
  10. 雷神领域(并查集真是个好东西)并查集+流氓dp