[分享创造] 给数据库客户端装上 AI: NL2SQL、报错诊断、EXPLAIN 解读、跨库工作流,一个不到 10MB 的开源工具

8 月 8 日
 flyxl

断断续续写了几个月,DataZen 终于到了 v0.0.8 。起因很朴素:日常要连 PostgreSQL 、MySQL ,偶尔还要看 Redis ,商业客户端要订阅,DBeaver 功能全但启动和内存都偏重。于是用 Tauri v2 + Rust + React 自己搓了一个桌面客户端,安装包不到 10MB ,GPLv3 开源,macOS 和 Windows 都支持。

主界面长这样:一个窗口管理所有连接,PostgreSQL / MySQL / SQLite / Redis 混在一起也没问题。

🤖 AI 这块是重头

最常用的是自然语言生成 SQL 。想不起来表名或函数?直接说人话,AI 会结合当前库的表结构生成 SQL ,流式输出,点一下就能执行:

写错 SQL 也不用再去搜索引擎了。报错之后点「诊断」,AI 会告诉你错在哪、为什么错,修正后的 SQL 一键应用。比如我把 SELECT 拼成 SELEC,AI 直接指出少了字母 T:

慢查询怎么优化? EXPLAIN 执行计划可视化,树形展示每一步的代价,再让 AI 解读瓶颈在哪:

📊 图表

查询结果不用导出到 Excel 了。一键从表格切到图表,自动推断字段类型、智能推荐图表类型,折线、柱状、饼图、散点、面积五种,支持导出 PNG / SVG:

⚙️ Workflow 跨库自动化

这版我最满意的功能:用 YAML 把「查数 → 分析 → 决策」固化成流程,支持跨库执行。比如从 PG 订单库查出订单,再去 MySQL 物流库补物流信息:

每个步骤可以绑定不同连接,支持条件分支、循环、错误策略( abort / skip / fallback ),还能在界面、MCP 或者 AI 对话里直接跑。

其他值得一提的

下载: https://github.com/flyxl/datazen/releases 仓库: https://github.com/flyxl/datazen

macOS 用户注意,应用还没做公证,首次打开如果提示「已损坏」,跑一下:

xattr -cr /Applications/DataZen.app

个人开源项目,功能边界和稳定性还有不少不足,欢迎 star 、提 issue 或者直接上手改。下一步打算把插件生态和文档站弄起来,感兴趣的可以来仓库聊聊。

1906 次点击
所在节点    程序员
4 条回复
shinelamla
8 月 8 日
那我建议看看 DBX
zengyufei
8 月 8 日
尴尬,用 AI 创造小工具就是这样,很容易撞车,而且别人的更好
flyxl
8 月 8 日
@shinelamla datazen 的 workflow 功能还是比较有特色的,对需要经常查询固定语句组合的场景比较有用,比如需要查询多个表的场景,以前是保存一组 sql 语句,每次查询都需要修改 where 参数,第一条 sql 查出来后再拿第一条的结果填第二条 sql 的 where ,现在只需要输入第一条 sql 的参数,后续 sql 会自动根据前面 sql 的结果填充参数继续执行。比较适合定位客诉问题,联调问题,固定测试场景等
flyxl
8 月 8 日
@zengyufei 不尴尬,至少解决了我们内部不少非标数据库访问问题,还节省了不少测试和线上问题定位时间

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1232833

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX