2026年ER图源码最新趋势与技术选型
ER图(实体-关系图)的源码通常使用 Mermaid 或 PlantUML 等基于文本的标记语言来编写。这种“代码生成图表”的方式非常便于在 Markdown 文档中维护、版本控制和快速修改。
以下为您整理了最常用的 Mermaid 语法源码示例及编写指南:
一、 基础语法结构
Mermaid 的 ER图以 erDiagram 关键字开头,核心是定义实体(表)、属性(字段)以及实体之间的关系。
图表代码
places
contains
has
CUSTOMER
int
id
PK
客户唯一标识
string
name
客户姓名
string
联系邮箱
ORDER
int
id
PK
订单编号
date
order_date
下单时间
float
total_amount
订单总金额
LINE-ITEM
ADDRESS
二、 关系符号速查表
在 实体A [符号] 实体B : 关系描述 中,符号由两部分组成:
端点符号:|| (有且仅有一个), o| (零或一个), }| (一个或多个), o{ (零或多个)
连线:-- (实线,表示必须/强关系), .. (虚线,表示可选/弱关系)
表格
下载为表格
导出为图片
符号组合含义常见场景
||--||一对一 (1:1)用户与用户详情、国家与首都
||--o{一对多 (1:N)客户与订单、部门与员工
o{--o{多对多 (M:N)学生与课程、商品与标签
三、 完整实战示例(电商订单系统)
您可以直接将以下代码复制到支持 Mermaid 的编辑器(如 Typora、Notion、Obsidian 或 GitHub)中查看渲染效果:
图表代码
提交
拥有
包含
被购买
归类
USER
bigint
user_id
PK
varchar
username
varchar
password_hash
datetime
created_at
ORDER
bigint
order_id
PK
bigint
user_id
FK
decimal
total_price
tinyint
status
0-待支付 1-已发货
USER_PROFILE
bigint
profile_id
PK
bigint
user_id
FK
string
avatar_url
string
phone_number
ORDER_ITEM
bigint
item_id
PK
bigint
order_id
FK
bigint
product_id
FK
int
quantity
PRODUCT
bigint
product_id
PK
bigint
category_id
FK
varchar
product_name
decimal
price
CATEGORY
int
category_id
PK
string
category_name
四、 编写注意事项
主外键标识:在属性类型后加上 PK (Primary Key) 或 FK (Foreign Key),Mermaid 会自动为其添加下划线或特殊标记。
注释说明:使用双引号 "注释内容" 可以为字段添加备注,方便团队阅读。
命名规范:实体名通常使用大写单数(如 USER),属性名使用小写下划线(如 created_at)。
-
聚簇索引怎么用常见问题排查手册聚簇索引常见问题排查手册(MySQL InnoDB)前置:InnoDB 只有聚簇索引,聚簇索引就是主键索引,数据行本身就存在主键索引的叶子节点,索引和数据绑定在一起;二级索引叶子节点存的是主键值,不是行地址。适用:后端面试、数据库故障排查、慢 SQL 优化,只讲实战现象...
-
聚簇索引路线图避坑指南:生产环境血泪教训聚簇索引路线图避坑指南:生产环境血泪教训 一、核心认知:聚簇索引决定整张表的物理存储InnoDB 是索引组织表,主键索引的叶子节点就是完整行数据,数据按主键顺序物理排列。5 一张表只有一个聚簇索引,选错主键,所有二级索引跟着遭殃。二、主键选型:最...
-
一文搞懂Redis面试错误解决,面试和工作都用得到一文搞懂 Redis 面试错误解决,面试和工作都用得到核心思路:Redis 报错不要死记报错码,分 客户端异常、连接异常、内存异常、持久化异常、集群异常、命令与使用规范 六大类,同时区分【面试标准答案】和【线上真实排查步骤】,面试直接说思路,工作直接照着...
-
MongoDB备份教程常见问题排查手册MongoDB 备份教程常见问题排查手册一、备份前必做检查磁盘空间:目标目录剩余空间建议至少为数据库大小的 3 倍,避免备份中途因 /tmp 或目标盘满而失败。连接验证:先用 mongosh 测试连接和认证,确认能执行 ping 命令。oplog 窗口:副本集备份前检查 rs.printReplication...
-
【干货】SQL优化方法优化技巧,性能提升10倍SQL 优化真正拉开差距的地方,不是背规则,而是先看懂执行计划,再减少数据库做的工作量。 下面这套方法适用于 MySQL、PostgreSQL、SQL Server 等主流数据库,按“诊断 → 改写 → 索引 → 架构”推进。 一、先诊断:不要凭感觉优化优化前先看三个数据源:慢查询日志...
-
Redis集群思维导图详解:从理论到生产环境实践Redis 集群思维导图详解:从理论到生产环境实践一句话总纲:Redis 集群核心目标是分片扩容 + 高可用,主流三种方案:主从复制、哨兵 Sentinel、Redis Cluster(官方集群);生产优先 Cluster,哨兵适合中小规模读写分离,主从仅适合学习或简单备份。下面按照思维导图结构逐...