news 2026/9/6 21:15:21

用 ChartDB 把数据库设计从“写 DDL“变成“画图纸“

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
用 ChartDB 把数据库设计从“写 DDL“变成“画图纸“

用 ChartDB 把数据库设计从"写 DDL"变成"画图纸"

【免费下载链接】chartdbDatabase diagrams editor that allows you to visualize and design your DB with a single query.项目地址: https://gitcode.com/GitHub_Trending/ch/chartdb

ChartDB 是一款开源的数据库图表编辑器:对现有库跑一条智能查询,就能自动提取表、字段、索引、外键,生成可编辑的数据库可视化设计图;设计完还能导出 DBML 和多种方言的 SQL 脚本,从 MySQL 迁到 PostgreSQL 时语法差异自动帮你翻。

先说场景:你大概在哪一刻想用它

接手一个没有文档的老库,翻几百行迁移脚本和注释是场折磨,想要一张图在半小时内把结构摸清楚。

团队里好几个人同时改表结构,靠 DDL diff 和口头沟通很容易漏,最好能拿着一张图直接指着外键关系讨论。

项目要从 MySQL 切到 PostgreSQL,方言差异是最大风险,需要有人自动把类型和语法翻过去,而不是靠手。

拆开看:它到底帮你做了什么

一条查询摸透现有库。ChartDB 的核心是"智能查询":你选数据库类型(PostgreSQL、MySQL、SQL Server、MariaDB、SQLite、ClickHouse 都在支持列表里),它在库里跑一段预置 SQL,把表、字段、主外键、索引、约束一次性抽成 JSON,粘贴结果进去,整个库的数据库可视化设计图就出来了,不用手工录入任何一条 CREATE TABLE。

DBML 双向转换。画布上随便拖表、改字段、画关系,随时导出 DBML 存进版本库;DBML 改完也能导回来接着画。复合主键、检查约束、多 schema 这类细节在导入导出时都有对应测试用例兜底,实现可以看 src/lib/dbml/ 目录。

跨方言出 SQL。设计定稿后导出 DDL 脚本,目标方言可选,跨数据库迁移时类型映射、语法差异自动处理,省掉手翻方言的坑;大库里还能把表按业务域分组,几百张表也能画清楚。

跑一遍:从 0 到看见第一张图

打开 ChartDB,选你的数据库类型,或者直接从模板示例库里挑一个看看效果。

按提示在库里执行那条智能查询,把返回的 JSON 粘贴进输入框。

几秒钟后画布上出现完整的表结构、外键线和索引信息,这就是你第一张数据库可视化设计图。

用起来之后你会顺手做的事

把导出的 DBML 文件提交到 Git:改结构前先 review 一份文本 diff,比对着 SQL 逐行 diff 快得多,新人也能靠它直接读懂库。

在 CI 里加一步 DBML 语法校验:坏结构在合并前就被拦下来,避免有人手抖提交了一份解析不了的模型。

它适合接手老库、频繁改表、跨数据库迁移这三类场景;不适合你需要图形化执行 DML、做存储过程级管控的团队——它管的是结构,不是数据。项目采用 AGPLv3 协议开源,DBML 解析、导出、应用三条链路的源码都在 src/lib/dbml/ 下,想改什么行为可以直接看实现,也欢迎提 PR。

【免费下载链接】chartdbDatabase diagrams editor that allows you to visualize and design your DB with a single query.项目地址: https://gitcode.com/GitHub_Trending/ch/chartdb

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/6 21:14:03

ZCode 官方提供了命令行工具 官方 CLI

有,ZCode 有 CLI 版本,而且不止一种形态。下面把官方渠道和社区版本分开说清楚,方便你选择。 官方 CLI ZCode 官方提供了命令行工具,需要 Node.js 环境(Windows 下要求 Node 22)。安装后即可在终端直接调用…

作者头像 李华
网站建设 2026/9/6 21:02:44

Vector 日志管道 Kubernetes 部署与配置实战指南

Vector 日志管道 Kubernetes 部署与配置实战指南 【免费下载链接】vector A high-performance observability data pipeline. 项目地址: https://gitcode.com/GitHub_Trending/vect/vector 凌晨三点,一条线上故障把你叫起来,你 SSH 到十几台机器逐…

作者头像 李华
网站建设 2026/9/6 21:02:39

3 步用 Wand-Enhancer 本地解锁 WeMod Pro:完整离线修补指南

3 步用 Wand-Enhancer 本地解锁 WeMod Pro:完整离线修补指南 【免费下载链接】Wand-Enhancer Advanced UX and interoperability extension for Wand (WeMod) app 项目地址: https://gitcode.com/GitHub_Trending/we/Wand-Enhancer Wand-Enhancer 是一款本地…

作者头像 李华