ER模型
实体联系模型或实体联系模式图(ERD)是概念数据模型的高层描述所使用的数据模型或模式图,它为表述这种实体联系模式图形式的数据模型提供了图形符号。这种数据模型典型的用在信息系统设计的第一阶段;比如它们在需求分析阶段用来描述信息需求和/或要存储在数据库中的信息的类型。但是数据建模技术可以用来描述特定论域(就是感兴趣的区域)的任何本体(就是对使用的术语和它们的联系的概述和分类)。在基于数据库的信息系统设计的情况下,在后面的阶段(通常叫做逻辑设计),概念模型要映射到逻辑模型如关系模型上;它依次要在物理设计期间映射到物理模型上。注意,有时这两个阶段被一起称为"物理设计"。
实体联系模式图(ERD)有一些约定。本文的余下部分描述经典概念,并且主要与概念建模有关。有一些概念更加典型的在逻辑和物理数据库设计中采用,包括信息工程、IDEF1x(ICAM DEFinition Language) 和空间建模。
常用符号
实体表示一个离散对象。实体可以被(粗略的)认为是名词。例如: 计算机,雇员,歌曲,数学定理。联系捕获两个或更多实体相互如何关联。联系可以被(粗略的)认为是动词。例如: 在公司和计算机之间的拥有关联,在雇员和部门之间的管理关联,在演员和歌曲之间的表演关联,在数学家和定理之间的证明关联。实体绘制为矩形,联系绘制为菱形。
实体和联系都可以有属性。例如: 雇员实体可以有一个社会保险编号属性(在美国);证明关联可以有一个日期属性。属性绘制为椭圆形并通过一条线与所属的实体相连。
每个实体(除非是弱实体)都必须有一个唯一标识属性的最小化集合。这个集合叫做实体的主键。
实体联系图不展示单一的实体或联系的单一的实例。它们展示实体集合和联系集合(分别显示为矩形和菱形)。例如: 特定的歌曲是实体。在数据库中所有歌曲的搜集是一个实体集合。在 Andrew Wiles 和 Fermat 的最后定理之间的证明联系是一个单一联系。所有这种数学家-定理联系的集合是一个联系集合。
线条绘制于实体集合和它们所参与的联系集合之间。如果在实体集合中所有实体都必须在联系集合中参与一个联系,则绘制粗线。这叫做参与约束。如果实体集合的每个实体可以在联系集合中参与最多一个联系,则绘制从这个实体集合到联系集合的一个箭头。这叫做键约束。要指示在实体集合中每个实体都必须精确的参与一个联系,则绘制粗箭头。
一元联系 - 一元联系是在一个单一的表格的行之间的联系。
不常用符号
弱实体是不能用它自己的属性唯一标识的实体,所以必须用它自己的属性和与之有关的实体的主键二者作为它的主键。弱实体集合指示为粗矩形(实体),通过一个粗箭头把它连接到一个粗菱形(联系)上。
有时两个实体是一个更一般的实体类型的更特殊化的子类型。例如,程序员和营销员都是软件公司的雇员的类型。要指示这种关联,绘制其中带有 "ISA" 的三角形。超类是连接到顶点上而两个(或更多)子类连接到底边上。
最后,通过聚集,一个联系和所有它的参与实体集合可以被当作一个单一的实体集合,目的是让它可以参与另一个关联。这可以指示为在所有聚集的实体和联系之外绘制一个虚矩形。
分类
实体联系模型可以依据是否只允许二元联系而分类为 BERM(二元实体关联模型)和 GERM(一般实体联系模型)。二元联系是在两个实体之间的联系。所以,在 GERM 中在在三个或更多实体之间的联系也是允许的。
参见
引用
- Peter P. Chen, The Entity-Relationship Model - Toward a Unified View of Data. ACM Transactions on Database Systems (TODS) Volume 1 Number 1: pp 9-36 (1976) [2]
本文是计算机领域被引用最多的论文之一。 在对 1,000 多个计算机科学教授做的一次新近的调查中,它被选举为在计算机科学中最有影响的论文之一。例如,在 DBLP: http://dblp.uni-trier.de/ [3] 所列出的引用。
外部链接
- Dia - 绘制 ER 图的开源软件
- Gershwin download at CSE2132 from Monash University - Gershwin 是 Monash University 开发的实体联系建模工具。
- Peter Chen 在 Louisiana 州立大学的主页 http://bit.csc.lsu.edu/~chen/chen.html
- IDEF1X
- DB Visual Architect