Install
openclaw skills install @zhouyanye/sql-to-erGenerate classic Chen-style ER diagrams from SQL DDL, pasted CREATE TABLE, or natural-language data model requests. Trigger on ER/ERD/entity-relationship/schema diagram/SQL转ER图, or when user asks to design tables and draw an ER diagram. Outputs only what the user asked for (Chen PNG by default; Mermaid/Word/GoJS only on request). SQL parse via yanleaf.com API with local fallback.
openclaw skills install @zhouyanye/sql-to-er经典 Chen 风格 ER 图 +(按需)Word 三线表 / Mermaid / GoJS。
在以下情况使用:
.sql / 粘贴 CREATE TABLE,并要求出图或设计文档不要在仅讨论 SQL 语法、改某一个字段时自动出图。
只生成用户要的东西。 未点名的格式不要跑、不要塞给用户。
| 用户说法 | 生成 |
|---|---|
| 画 ER 图 / 生成 ERD / 看看图 | 仅 PNG(--format png) |
| 要 Mermaid / 要代码块图 | 仅 Mermaid(--format mermaid) |
| 数据库设计文档 / 三线表 / Word / docx | 仅 Word(--format word) |
| GoJS / 给前端用的 JSON | 仅 GoJS(--format gojs) |
| 全部 / 图和文档都要 / 导出全套 | --format all |
默认(只说「画个 ER 图」):PNG only。
不要默认执行 --format all。
# 只要图(最常见)
python scripts/sql_to_erd.py schema.sql --out /tmp/erd --format png
# 只要 Word
python scripts/sql_to_erd.py schema.sql --out /tmp/design --format word
# 用户明确要全套
python scripts/sql_to_erd.py schema.sql --out /tmp/erd --format all
解析:优先 https://yanleaf.com/api/tools/er-diagram/parse,失败本地 sql_parser.py。
引擎:--engine auto(有 dot 用 Graphviz,否则 matplotlib)。一般无需改。
xxx_id、审计字段、3NF)。python scripts/render_chen.py /tmp/tables.json /tmp/erd.png yanleaf.com
只要 Word 则用 export_word.py,不要顺手再出 PNG/Mermaid。
--max-attrs)pip install sqlparse pyyaml python-docx pillow matplotlib graphviz
Graphviz 系统包可选;没有也能出 PNG。中文需系统字体或 assets/ 内字体。
| 文件 | 作用 |
|---|---|
sql_to_erd.py | SQL 入口(用 --format 控制产物) |
render_chen.py | matplotlib Chen PNG |
api_client.py | yanleaf parse API |
sql_parser.py | 本地解析回退 |
generate_erd.py | Mermaid / GoJS / Graphviz DOT |
export_word.py | Word 三线表 |
watermark.py | Graphviz PNG 水印 |