Author:天添豆浆
计算机科学与技术专业,迷摇滚的理科男

参考:

数据库设计案例分析——概念模型设计(ER图)

实体(表),关系理解为表之间的联系;在数据库设计阶段,实体关系图的建立位于概念模型设计阶段,这一阶段主要用于进行实体之间的关系建立。

详解

ER图分为实体属性关系三个核心部分。
实体是长方形体现,而属性则是椭圆形,关系为菱形。

  • ER图的实体(entity):即数据模型中的数据对象,例如人、学生、音乐都可以作为一个数据对象,用长方体来表示,每个实体都有自己的实体实例(entity instance),例如学生实体里包括张三、李四等,实体实例(entity instance) 不需要出现在ER图中。
  • ER图的属性(attribute):即数据对象所具有的属性,例如学生具有姓名、学号、年级等属性,用椭圆形表示,属性分为唯一属性( unique attribute)和非唯一属性,唯一属性指的是唯一可用来标识该实体实例或者成员的属性,用下划线表示,一般来讲实体都至少有一个唯一属性。
  • ER图的关系(relationship):用来表现实体与实体之间的联系,例如学生的实体和成绩表的实体之间有一定的联系,每个学生都有自己的成绩表,这就是一种关系,关系用菱形来表示。

数据库ER图(表)之间的关联关系

1对1(1:1):指对于实体A与实体B,A中的每一个实体实例只能与B中某一个实体实例有关系;反之,在实体B中的每个实体实例只能与实体A中某一个实体实例有关系。如:学生:成绩表(一个学生对应于成绩表中的一个成绩;而成绩表中的一个成绩只能对应一个学生)

1对多(1:N):指实体A的每一个实体实例 与 实体B中的多个实体实例有关系;并且实体B中每一个实体实例只能与实体A中某一个实体实例有关系。如:部门表:员工表(一个部门对应多个员工,一个员工只属于一个部门)。

多对多(M:N):指实体A中的每一个实体与实体B中多个实体有关系;并且实体B中的每一个实体与实体A中的多个实体有关系。如:员工:角色(一个员工可以有多个角色,如:打扫卫生,整理资料的角色;一个角色可以有多个员工,如:打扫卫生的人有张三、李四、王五等)。

举例

大学生上课成绩ER图:

MySQL数据库排课系统 数据库排课管理系统er图_MySQL数据库排课系统