共计 1911 个字符,预计需要花费 5 分钟才能阅读完成。
当咱们在我的项目开发初期时,往往须要设计大量的表,此时应用数据库设计工具就会比拟高效!明天给大家举荐一款国人开源的数据库设计工具
chiner
,界面丑陋,功能强大,心愿对大家有所帮忙!
SpringBoot 实战电商我的项目 mall(50k+star)地址:https://github.com/macrozheng/mall
聊聊 PowerDesigner
之前 mall
我的项目就是应用 PowerDesigner 来设计数据库的,感觉这款工具界面有点古老,有时候用起来也比拟重,来看下之前应用它设计数据库的成果。
最近体验了一把 chiner,设计数据库的确很不便,界面也丑陋,让咱们来看下应用它设计数据库的成果,果然是一款轻量级、现代化的数据库设计工具!
chiner 简介
chiner 是一款反对多种数据库,独立于具体数据库之外的数据库关系模型设计工具,应用 React+Electron+Java 技术栈实现。
chiner 的倒退历程比拟崎岖,我的项目作者都把它的倒退历程放在的 README 最显眼的地位上,可见开发一款好用的开源工具有如许不容易!咱们来看下它的倒退历程。
装置
chiner 是一款跨平台的数据库设计工具,反对 Windows、Mac、Linux,上面咱们来装置下。
- 咱们下载安装包时须要留神,应用右键,抉择
链接另存为
进行下载,下载地址:https://gitee.com/robergroup/…
- 下载实现后解压到指定目录,双击
exe
执行程序即可关上;
- 关上界面后,能够发现十分贴心地提供了
操作手册
和参考模板
。
根本应用
作为一款数据库设计工具,chiner 的性能还是挺弱小的,上面咱们通过官网提供的电商参考模板,来体验下它的基本功能。
基本概念
- 因为 chiner 须要反对多种数据库,还要能生成实体类代码,所以就有了
数据类型
这个概念,用于映射 chiner 中的数据类型到各种数据库和代码中,比方咱们来看下字串
这个数据类型;
- 记得咱们应用其余工具设计数据库时,设置字符常常须要设置长度、设置金额须要设置长度及小数位数,在 chiner 中只有设置好
数据域
,就能主动生成,咱们来看下数据域;
- 这里须要留神的是
数据域
须要绑定数据类型
;
- 对于一些字段的枚举类型,chiner 也提供了数据字典性能,比方咱们能够设置用户状态
0-> 解冻
,1-> 失常
。
数据表治理
- 在设计数据库时,往往会有一些专用字段,比方
创立工夫
、创建人
、更新工夫
、更新人
这类字段,应用 chiner 能够主动生成,点击设置 -> 新建表默认字段
即可;
- 接下来咱们新增一张测试表,就能够发现公共字段曾经被全副增加了;
- 仔细的敌人能够发现目前字段都是设置的
大写
,咱们习惯了小写
这么办,选中字段代码
,点击大小写
按钮即可一键转换;
- 在咱们增加字段的时候,只有间接抉择
数据域
,即可主动设置数据类型和长度,比方罕用的主键、名称、字串等,十分不便;
- 当然咱们也能够间接抉择
数据字典
,抉择完后也能够间接查看数据字典。
关系图治理
- 应用 chiner 创立关系图也是比拟不便的,点击
新增关系图
而后抉择连线对象为字段
即可;
- 接下来把数据库表拖拽到关系图中即可;
- 连贯有关系的字段即可创立连线,右键连线能够编辑关系;
- 来张残缺的关系图看看,成果还是不错的,操作也很不便;
- 之前应用 PowerDesigner 是能够间接应用外键来生成关系图的,而 chiner 是不反对的,不过在阿里巴巴 Java 开发手册中提过
不得应用外键
,既然不应用外键了,把关系从数据库抽离到设计工具外面去,也是能够了解的。
导入导出应用
chiner 还反对数据库逆向解析、导入 PowerDesigner 文件、导出 DDL 脚本及 Word 文档,上面咱们来体验下。
- 从数据库导入前,咱们须要先配置好数据库连贯信息;
- 而后抉择从数据库导入;
- 之后抉择好须要导入的表即可;
- 当然 chiner 也是反对从 PowerDesigner 文件导入的;
- 当咱们设计好数据库之后,就能够应用 chiner 的导出 DDL 性能,来将表同步到数据库中了;
- 有时候可能须要数据库阐明文档,间接应用 chiner 的导出 Word 文档性能即可,无需手写。
总结
chiner 的确是一款界面好看、功能强大的数据库设计工具。比起 PowerDesigner 来,更加轻量级、界面也高大上的多。感觉惟一有余的中央就是不能通过外键生成关系图,对于一些应用外键的我的项目就比拟麻烦了。
参考资料
- 我的项目地址:https://gitee.com/robergroup/…
- 使用手册:https://www.yuque.com/chiner/…
本文 GitHub https://github.com/macrozheng/mall-learning 曾经收录,欢送大家 Star!