数据库设计(二):ER图绘制

上一节我们提到ER图由3中基本的要素(属性/字段(Attribute)、关系(Relation)、实体(Entity))组成,那么在这一节中我们介绍不同在ER图中如何去表示这些要素。


属性/字段(Attribute)

属性的类型:

  • 普通属性(Singlevalued attribute)。
  • 多变量属性(Multivale attribute)。这种属性可以拥有超过一个的值,例如:工作地址属性,一个人可以有多个工作地址。
  • 衍生属性(Derived attribute)。这种属性是有数据库衍生出来的,例如:数据库自动生成的***。
  • 键属性(Key attribute)。该属性作为主键。
  • 弱键属性(Weak key attribute)。该属性存在于弱关系中,作为区分(类似主键的作用)弱关系的属性。
  • 组合属性(Composite attribute)。由其他属性组合而成的属性,例如:名字可由姓属性和名属性组合而成。

属性在ER图中的表示方法:

数据库设计(二):ER图绘制


关系(Relation)

在上节我们提到,关系有3中性质:度(Degree)、参与度(Participation)和基数(Cardinality),在ER图中Participation和Cardinality的绘制方法如下图所示:

数据库设计(二):ER图绘制


实体(Entity)

在ER建模中,实体分为3种:

  • 普通实体(Normal entity)。
  • 弱实体(Weak entity sets, WES)。弱实体的存在依赖于普通实体,例如:电话号码这个实体必须依附于人,因为电话号码不能单独存在,必须属于一个人。
  • 子类(Subclasses)。子类分为重叠子类(Overlapping)和不相交子类(Disjoint)。其中重叠子类表示父类可以同时是多个子类,例如一个父类(人),可以同时是两个子类医生、患者。而在不相交子类,父类只能属于其中一种子类,例如:一个人只能是本科生和研究生其中的一种,不能同时是本科生和研究生。

不同类型的实体在ER图中的表示如下图所示:

数据库设计(二):ER图绘制