干掉 powerdesigner,设计数据库表用它就够了
最近有个新项目刚过完需求,正式进入数据库表结构设计阶段,公司规定统一用数据建模工具 PowerDesigner。但我并不是太爱用这个工具,因为它的功能实在是太多了,显得很臃肿,而平时设计表用的也就那么几个功能。
这里找到一个好用的工具,马不停蹄的分享给大家,PDMan 一款国产开源的数据库模型建模工具,它的功能PowerDesigner 均已经实现,但相比于笨重的PowerDesigner来说。PDMan 专门用于数据表的设计,界面更加清爽漂亮,功能也十分简洁,没多余的设置很容易上手,还提供了 Windows,Mac,Linux 三个平台版本。
PDMan保存的是一个JSON文件,使用前得先做点准备工作,配置一下 JDK 和 MySQL 连接,后边的功能会用到。
下边我们来逐一看下PDMan 的功能点。
PDMan 支持一键导出数据表结构的DDL执行脚本,JSON格式数据,还有数据库表结构文档,其中数据库文档又可以生成 html 、word、markdown 三种格式,文档内容包括各个表的字段属性,数据表间的关系图。
html 格式
word 格式
markdown 格式
前边我们已经配置了数据库信息,这里直接将已有数据库中的数据表,逆向生成表结构,和数据表间的关系图。
PDMan 可以控制每次修改的版本,对任意版本间的修改进行比对,和Git的版本控制类似。
设置表结构的全局通用字段属性,通常在建表的时候,每个表都会有像创建时间 create_time、更新时间update_time、删除标记delete_flag、乐观锁revision这类字段,这样设置完以后在建表时会自动生成。
还可以自定义数据类型,比如:字符型可以自定义 varchar(10)、varchar(20)、varchar(30),建字段时直接选择对应数据类型即可,一劳永逸。
PDMan整体功能非常的简洁,不过也足以应对日常开发中数据库设计需求了。
作者:程序员内点事链接:https://juejin.cn/post/6911962087820525582
开发一款自己的数据库表设计器
平时做数据库设计时大多基于 UI 操作,需要在各种输入框中频繁的来回切换,操作麻烦且效率低。也找到一些基于DSL方言的建表工具:
dbdiagram.io – Database Relationship Diagrams Design Tool
QuickDBD (quickdatabasediagrams.com)
Free ER Diagram Tool – ERD Lab
体验下来感觉有些语法还是很别扭, 本着重复发明轮子的精神, 闲来无事就自己做一个
工具特点:
- 使用 DSL 方言,语法简洁,易于上手;
- 自动提示,减少语法关键字输入;
- 无需鼠标操作,专注于表结构设计;
- 支持生成Mysql/Sqlite3/Postgres/Mssql SQL建表语句;
- 浏览器本地localStorage缓存;
- 实时生成 ER 关系图,方便直观地查看表关系(开发中);
技术实现:
- Vue3 + Codemirror
- DSL 方言解析:Lezer
- knex 建表sql语句生成
DSL示例:
乍一看和sql建表的语句好像区别不大, 省略了一些sql的关键字,再加上自动提示,没有了输入框的频繁切换, 可以比较专注的在设计表结构这件事情上.
运行效果:
目前功能还非常简陋. 喜欢的可以简单体验一下: https://litgh.github.io/
AI数据库设计神器:轻松生成表结构、ER图和CRUD代码
在项目初期,或者项目中途要加表,使用数据库设计工具来完成一些基本的功能,就显得特别重要,关键可以提高开发效率。
今天要介绍的工具就是一款在线数据库设计工具,界面简单易操作。
该工具可以实现如下功能:
- 通过AI生成数据库表结构,可视化对表结构手动调整
- 根据生成的数据库表结构,导出DDL语句
- 设计制作美观的ER图
- 生成CRUD代码,支持多种主流语言(java、go、python、js等),支持多种框架类型代码
- 支持同步CRUD代码到开发工具中
这个工具只需要访问itBuilder,不需要安装任何软件。
进入我的工作台:
可以创建项目,本次在演示项目中演示基本功能。
输入你要生成表结构的需求描述,工具会帮你分析需求,设计表结构,如:
输入完成后,点击试一试:
生成完成后,点击保存,输入关系图名称:
创建完后,可视化表结构,可以自己手动调整:
点击导出DDL按钮,可以针对创建的所有表结构,导出DLL语句:
通过表结构,查看已经生成好的ER图:
可以手动设置表关系,还可以为每个表设置不同颜色:
生成CRUD代码:
点击代码偏好:
这个可以事先设置偏好,支持的主流的语言和框架都比较全:
本次选择 java 语言,然后选择 MybatisPlus,项目是 SpringBoot 框架:
再点击生成:
生成好了,controller、service、entity:
可以同步代码到指定的指定的设备:
同步代码到IDE:
点击连接设备:
这个设备码从哪里获取?比如同步到 idea 中去,在idea可以安装插件:
右下角,先点击连接,然后查看设备码:
将设备码复制到:
点击建立连接:
输入同步路径:/
本文作者及来源:Renderbus瑞云渲染农场https://www.renderbus.com
文章为作者独立观点不代本网立场,未经允许不得转载。