数据库概念设计:E-R图(实体-关系图)零基础详解
在数据库设计流程中,概念结构设计是最核心的前置步骤,作用是把现实业务场景,抽象为结构化的数据模型,脱离具体数据库、专注业务逻辑。而 E-R图(实体-关系图) 就是概念结构设计的标准、最常用的建模方法。
本文将从零讲解 E-R 图的核心概念、三大组成要素、画图规范、映射基数,搭配 一对一、一对多、多对多 经典实战案例,轻松掌握数据库建模核心技能。
一、E-R图核心概念
E-R图(实体关系图):是一种用来概括数据基本结构的概念模型,通过 实体、属性、联系 三个基础要素,抽象描述现实业务中的静态数据结构,是数据库建表、表关系设计的前置蓝图。
简单理解:把业务中的事物、事物特征、事物之间的关联,用图形化方式画出来,就是 E-R 图。
二、E-R图三大组成要素及画图规范
E-R 图所有构图逻辑,都基于实体、属性、联系三要素,每个要素有固定图形符号,是画图和考试的核心考点。
1. 实体型(Entity)—— 业务中的独立事物
定义:现实世界中,具有相同特征、可独立存在、可相互区分的同类事物的集合。
图形表示:矩形,框内标注实体名称。
举例:学生、教师、课程、部门、仓库、商品、班级都属于实体;张三、李四是学生实体下的具体实例。
2. 属性(Attribute)—— 实体的特征字段
定义:用来描述实体的具体特性、数据字段,一个实体可以包含多个属性。
图形表示:椭圆形,通过无向直线与对应实体相连。
举例:学生实体的学号、姓名、性别、年龄;商品实体的商品号、商品名、价格。
补充:实体的主键属性,可在属性名称下方添加下划线标识,代表唯一标识。
3. 联系(Relationship)—— 实体间的关联关系
定义:两个或多个实体之间,业务层面的相互连接、相互作用的关系。
图形表示:菱形,框内标注联系名称,通过直线连接对应的实体。
核心特性:部分联系可以拥有自身属性,用来记录关联过程中产生的独有数据。
举例:教师和课程的“讲授”关系、仓库和商品的“存放”关系、部门和主任的“管理”关系。
三、E-R图映射基数(核心规则)
映射基数用于精准描述:一个实体中的一条数据,可以对应另一个实体中的多少条数据,直接决定表与表的关联结构,分为三种核心类型:
- 一对一(1:1):A 中一条记录,仅对应 B 中一条记录,反之亦然;
- 一对多(1:n):A 中一条记录,可对应 B 中多条记录,B 中一条记录仅对应 A 中一条记录;
- 多对多(m:n):A 中一条记录可对应 B 中多条记录,B 中一条记录也可对应 A 中多条记录。
四、E-R图三大关系实战案例
下面结合经典业务场景,完整拆解 1:1、1:n、m:n 三种关系的实体、属性、联系,适配课程作业、数据库设计练习。
1. 一对一联系(1:1)—— 部门与主任
业务场景
某学院包含多个系,每个系仅有一名主任,一名主任仅负责管理一个系,系和主任为一对一管理关系。
实体与属性拆解
- 主任(实体):编号、姓名、年龄、学历(编号为主键)
- 系(实体):系编号、系名(系编号为主键)
联系说明
两个实体的联系为 管理(1:1),无额外属性;一个系对应一位主任,一位主任仅管理一个系,双向唯一对应。

2. 一对多联系(1:n)—— 仓库与商品
业务场景
仓库管理系统业务规则:一个仓库可以存放多件商品,一类商品只能存放在一个仓库中,仓库与商品构成一对多存放关系。
实体与属性拆解
- 仓库(实体,1的一方):仓库号、地点、面积(仓库号为主键)
- 商品(实体,n的一方):商品号、商品名、价格(商品号为主键)
联系说明
两个实体的联系为 存放(1:n);该联系拥有自身属性:存放数量,用于记录当前仓库中对应商品的库存数量。

3. 多对多联系(m:n)—— 教师与课程
业务场景
教务管理系统业务规则:一名教师可以讲授多门课程,一门课程可以由多名教师共同讲授,教师与课程为多对多讲授关系。
实体与属性拆解
- 教师(实体):教师号、教师名、职称(教师号为主键)
- 课程(实体):课程号、课程名、授课班级(课程号为主键)
联系说明
两个实体的联系为 讲授(m:n);该联系拥有自身属性:授课质量,用于记录每位教师对应每门课程的授课评分/评价。

五、核心总结
-
E-R图作用:数据库概念设计核心工具,将业务场景抽象为标准化数据模型,为后续建表、设计外键关系提供依据;
-
三要素图形:实体=矩形、属性=椭圆形、联系=菱形;
-
三类映射关系:一对一(1:1)、一对多(1:n)、多对多(m:n);
-
特殊要点:多对多、部分一对多的联系可以拥有独立属性,是建模高频考点;数据库中多对多关系需借助中间表拆解为两个一对多关系实现。
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐


所有评论(0)