应启用draw.io的“实体关系”图形库并依标准选用陈氏、乌鸦爪或idef1x表示法:陈氏用矩形/椭圆/菱形+文字基数;乌鸦爪用连线末端符号编码基数;idef1x区分强弱实体与标识关系。

如果您在 draw.io 中绘制实体关系图时,发现图形符号混乱、连线不规范或无法准确表达基数约束,则可能是由于未正确选用 ER 图表示法或未遵循对应标准。以下是绘制标准 ER 图的多种方法:
一、启用并使用标准实体关系图形库
draw.io 默认未激活专业 ER 图形库,需手动启用以获取符合规范的 Entity(矩形)、Attribute(椭圆)、Relationship(菱形)等原生形状,避免用基础几何图形自行拼凑导致语义失真。
1、打开 draw.io(或 drawon.cn),点击左侧面板底部的“更多形状”。
2、在弹出窗口中展开“软件”分类,勾选“实体关系”选项并点击“应用”。
3、确认左侧图形库中出现“Entity”、“Attribute”、“Relationship”、“Identifying Relationship”等专用图标。
二、采用陈氏表示法(Chen Notation)绘制
陈氏表示法是学术界最经典的 ER 图标准,强调语义清晰性,使用矩形、椭圆、菱形严格区分实体、属性、关系,所有连接线均为无向直线,基数标注于连线两端。
1、从图形库拖拽“Entity”形状(粗边框矩形)至画布,双击输入实体名(如“学生”)。
2、为该实体添加属性:拖拽多个“Attribute”形状(椭圆),分别输入“学号”“姓名”“年龄”,并用实线连接至实体边框中心。
3、若存在主键属性,在其名称前添加下划线(如学号)或标注“PK”;外键属性标注“FK”。
4、拖拽“Relationship”形状(菱形)置于两个实体之间,用实线分别连接菱形顶点与两实体边框中心。
5、在每条连接线上靠近实体的一端,手动标注基数,如“1”、“N”、“0..1”、“1..*”。
三、采用乌鸦爪表示法(Crow’s Foot Notation)绘制
乌鸦爪表示法是工业界主流标准,直接将基数信息编码在线段末端形态中,无需额外文字标注,更利于向物理数据库表结构映射。
1、启用图形库后,从“实体关系”类中选择带“Crow’s Foot”前缀的连接线工具(如“1 to Many”、“Many to Many”)。
2、先放置两个“Entity”形状,再点击连接线工具,依次点击源实体与目标实体,自动生成带乌鸦爪符号的连线。
3、连线自动显示:单短横(|)表示“1”,三叉线(┣┫)表示“many”,圆圈(○)表示“optional”;组合如“|–○”表示“零或一个”,“|–┣┫”表示“一个或多个”。
4、关系名称(如“选修”)直接标注在线段正上方或下方,字体居中。
四、采用IDEF1X表示法绘制
IDEF1X 是美国军方标准,强调数据建模的精确性与可逆性,适用于高一致性要求的系统集成场景,支持标定强/弱实体、标定关系类型(标识/非标识)。
1、从图形库中选择“IDEF1X Entity”形状(矩形+底部双线)表示强实体;选择“Weak Entity”形状(矩形+底部虚线)表示依赖型弱实体。
2、标识关系(Identifying Relationship)使用实线+实心菱形+双线连接至弱实体;非标识关系(Non-identifying Relationship)使用虚线+空心菱形+单线连接。
3、在弱实体属性中,必须包含来自强实体的外键属性,并以斜体+FK标注,且该属性参与构成弱实体的主键。
4、所有关系连线末端须明确标注“Mandatory”(强制)或“Optional”(可选),不可省略。
五、三种表示法核心差异对照
陈氏表示法以形状语义绝对分离为特征,适合教学与理论建模;乌鸦爪表示法以连线末端形态直译基数为核心,适配开发与DBA协作;IDEF1X 以强弱实体划分与关系标定机制为基石,面向企业级数据治理与系统集成。
同一“订单-客户”关系在三种表示法中的体现:陈氏用菱形“下单”+两端标注“1”和“N”;乌鸦爪用单线+“|”端连客户、“┣┫”端连订单;IDEF1X 则将“订单”设为弱实体,通过实线菱形连接至强实体“客户”,并标注“Mandatory”。











