SQL转ER图工具:让数据库设计可视化更简单
ER图生成工具
在复杂的数据库开发过程中,你是否遇到过这些困扰?
- 手动绘制ER图耗时又容易出错
- 团队成员对数据库结构理解不一致
- 数据库变更后,图表更新非常麻烦
- 缺乏直观的数据库关系展示工具
为了解决这些问题,我开发了 SQL to ER Diagram Converter,这是一个能够将SQL建表语句"一键转换"为ER图的Web应用。
项目地址:
- 初版线上地址:http://smartlink.fengye.fan
- tips:目前移动手机注册不了,请使用电信或者联通手机注册。
🎯 项目亮点
想象一下,当你拿到一份数据库设计文档,只需要:
- 复制SQL建表语句
- 粘贴到工具中
- 点击"生成"按钮
瞬间,一张清晰的ER图就展现在你面前!不仅如此,你还可以:
- 拖拽调整图表布局
- 缩放查看细节
- 导出高清图片
- 自定义样式和主题
💡 核心功能详解
1. 智能SQL解析引擎
我们的解析引擎就像一个细心的"翻译官":
- 精准识别CREATE TABLE语句中的每个细节
- 自动提取表名、字段名、字段类型
- 智能分析主键、外键关系
- 完整保留表和字段的注释信息
- 支持批量处理多个表结构
2. 直观的可视化展示
采用业界领先的GoJS图形引擎:
- 自动计算最优布局,告别凌乱的图表
- 清晰展示表之间的关系连线
- 主键用下划线特殊标记
- 外键关系用箭头直观表示
- 支持缩放、平移、框选等操作
3. 人性化的交互体验
为了让使用更加便捷:
- 拖拽即可调整表的位置
- 双击可以编辑表名和字段
- 鼠标滚轮控制缩放
- 支持多选批量移动
- 所有操作都支持撤销/重做
4. 专业的导出功能
考虑到实际使用需求:
- 支持PNG、JPEG等主流格式
- 可选透明背景,方便嵌入文档
- 文件名自动添加时间戳,方便版本管理
- 导出高清图片,确保清晰度
🔧 技术架构
前端技术栈
Vue 3(核心框架)
├── Element Plus(UI组件)
├── GoJS(图形渲染)
└── Composition API(状态管理)
后端技术栈
Spring Boot 3.x(核心框架)
├── Druid SQL Parser(SQL解析)
├── Maven(项目构建)
└── Java 17(开发语言)
🚀 快速开始
环境准备
- Node.js 16+
- Java 17+
- Maven 3.6+
安装步骤
- 克隆项目:
git clone https://github.com/lbytsl/sql_to_ER.git
- 启动前端服务:
cd sql-font
npm install
npm run serve
- 启动后端服务:
cd sql-back
mvn spring-boot:run
💎 应用场景
-
数据库设计阶段
- 快速生成ER图,验证设计合理性
- 团队协作时直观展示表结构
- 方便进行设计评审
-
项目开发过程
- 新成员快速了解数据库结构
- 开发文档的图表生成
- 数据库变更的可视化对比
-
系统维护阶段
- 数据库文档更新
- 系统重构分析
- 性能优化参考
🎯 项目价值
-
效率提升
- 从手动绘图到自动生成,节省80%时间
- 批量处理能力,支持大型数据库设计
- 所见即所得的编辑体验
-
质量保证
- 自动化生成,避免人工错误
- 标准化的图形展示
- 版本管理更清晰
-
协作增强
- 统一的可视化展示
- 便捷的分享方式
- 降低沟通成本
🔮 未来规划
-
功能扩展
- 支持更多数据库方言
- 添加更多导出格式(如SVG、PDF)
- 提供更多布局算法
-
性能优化
- 提升大型数据库的处理能力
- 优化图形渲染性能
- 增强响应式体验
-
交互升级
- 增加更多自定义选项
- 提供模板系统
- 支持协同编辑
🤝 参与贡献
欢迎加入项目开发,让我们一起把数据库设计变得更简单、更高效!
- 提交Issue:分享你的想法和建议
- 提交PR:帮助改进代码
- 分享使用:让更多人受益
作者:codeMaster
联系邮箱:1012858748@qq.com