最近在造轮子,从 0 到 1 的那种,就差前台的界面了,大家可以耐心耐心耐心期待一下。其中需要设计一些数据库表,可以通过 Navicat 这种图形化管理工具直接开搞,也可以通过一些数据库设计工具来搞,比如说 PowerDesigner,更专业一点。

今天我给大家推荐的这款国人开源的数据库设计工具 chiner,界面漂亮,功能强大,体验后给我的感觉是真香…

干掉 PowerDesigner,这款开源数据库设计神器真的绝了_database

一、 关于 PowerDesigner

PowerDesigner 是一款功能非常强大的建模工具,可以和 Rational Rose 媲美。Rose 专攻 UML 对象模型的建模,之后才拓展到数据库这块。而 PowerDesigner 是一开始就为数据库建模服务的,后来才发展为一款综合战斗力都还不错的建模工具。

不过,说句实在话,PowerDesigner 的界面偏古典一些,下面是我用 PowerDesigner 设计 DB 的效果。

干掉 PowerDesigner,这款开源数据库设计神器真的绝了_数据库_02

二、关于 chiner

chiner,发音:[kaɪˈnər],使用React+Electron+Java技术体系构建的一款元数建模平台。

2018 年,作者和几个对开源有兴趣的社区好友开始打磨产品的原因,历经三代,直到 2021 年 7 月份,终于推出了船新的 3.0 版本。

2019 年底,团队差点解散,幸好有几位好友关照,给了团队两个项目做,这才算是熬了过去。

不得不说,做任何一件事情都不容易啊,光靠情怀也许可以撑过产品初期,但越往后去,遇到生存问题时,就会非常困难。

在此,我们必须得为每一位开源作者奉上最真诚的掌声,希望他们的产品都能有一番天地。也希望,未来我的产品出现在大家的面前时,能给它多一点点包容和支持。

干掉 PowerDesigner,这款开源数据库设计神器真的绝了_字段_03

三、安装 chiner

chiner 支持 Windows、macOS 和 Linux,下载地址如下所示:


https://gitee.com/robergroup/chiner/releases


码云做了外部链接的拦截,导致直接复制链接到地址栏才能完成下载。我这里以 macOS 为例。

干掉 PowerDesigner,这款开源数据库设计神器真的绝了_数据库_04

安装完成后首次打开的样子是这样的。

干掉 PowerDesigner,这款开源数据库设计神器真的绝了_数据库_05

chiner 提供了非常贴心的操作手册和参考模板,如果时间比较充分的话,可以先把操作手册过一遍,写得非常详细。

干掉 PowerDesigner,这款开源数据库设计神器真的绝了_字段_06

四、上手 chiner

01、导入导出

因为我之前有一份 PowerDesigner 文件,所以可以直接导入到 chiner。

第一步,新建一个项目 codingmore。

第二步,选择导入 PowerDesigner 文件。

干掉 PowerDesigner,这款开源数据库设计神器真的绝了_uml_07

第三步,选择要添加的数据表。

干掉 PowerDesigner,这款开源数据库设计神器真的绝了_database_08

第四步,导入完成后,就可以点开单表进行查看了。

干掉 PowerDesigner,这款开源数据库设计神器真的绝了_uml_09

第五步,当完成重新设计后,就可以选择导出 DDL 到数据库表了。

干掉 PowerDesigner,这款开源数据库设计神器真的绝了_java_10

当然了,也可以直接配置数据库 DB,这样就可以直接连接导入导出了。

干掉 PowerDesigner,这款开源数据库设计神器真的绝了_database_11

导出的 SQL 文件可以直接通过宝塔面板上传到服务器端,然后再直接导入到数据库。

干掉 PowerDesigner,这款开源数据库设计神器真的绝了_数据库_12

如果需要用到数据库说明文档的话,也可以直接通过导出到 Word 文档来完成。

干掉 PowerDesigner,这款开源数据库设计神器真的绝了_数据库_13

02、维护数据类型

chiner 自带了几种常见的数据类型,比如字串、小数、日期等,我们也可以根据自己的需要添加新的数据类型。

比如说默认的字串类型关联到其他数据库的类型如下所示:

干掉 PowerDesigner,这款开源数据库设计神器真的绝了_database_14

数据域是在数据类型的基础上,基于当前项目定义的有一定业务含义的数据类型,比如说我这里维护了一个长度为 90 的名称数据域。

干掉 PowerDesigner,这款开源数据库设计神器真的绝了_数据库_15

当我需要把某个数据字段的数据域设置成「名称」的时候,长度就会自动填充为 90,不需要手动再去设置。

干掉 PowerDesigner,这款开源数据库设计神器真的绝了_java_16

03、维护数据表

第一步,选中数据表,右键选择「新增数据表」

干掉 PowerDesigner,这款开源数据库设计神器真的绝了_database_17

第二步,填写数据表名

干掉 PowerDesigner,这款开源数据库设计神器真的绝了_字段_18

点击「确定」后,chiner 会帮我们自动生成一些常见常用的字段,比如说创建人、创建时间、更新人、更新时间等,非常的智能化。通常来说,这些字段都是必须的。

干掉 PowerDesigner,这款开源数据库设计神器真的绝了_database_19

如果这些默认字段不满足需求的时候,还可以点击「设置」新增默认字段,比如说删除标记,一般来说为了安全起见,数据库都会采用非物理删除。

干掉 PowerDesigner,这款开源数据库设计神器真的绝了_uml_20

一般来说,我们更习惯字段小写命名,因此可以直接选中一列,然后选择大小写转换。

干掉 PowerDesigner,这款开源数据库设计神器真的绝了_数据库_21

就变成小写了。

干掉 PowerDesigner,这款开源数据库设计神器真的绝了_uml_22

04、维护关系图

第一步,选择「关系图」,右键选择「新增关系图」

第二步,把需要关联的表拖拽到右侧的面板当中,然后按照字段进行连线,非常的方便。比如说班级和学院表、班级和专业表的关系,就如下图所示。

干掉 PowerDesigner,这款开源数据库设计神器真的绝了_字段_23

来看一下整体给出来的关系图,还是非常清爽的。

干掉 PowerDesigner,这款开源数据库设计神器真的绝了_uml_24

五、尾声

chiner 还有更多更强大的功能,大家觉得不错的话,可以去尝试一下。用的熟练的话,肯定能在很大程度上提高生产效率。

就我个人的使用体验来说,chiner 比 PowerDesigner 更轻量级,也更符合日常的操作习惯,为国产开源点赞!

项目地址:


https://gitee.com/robergroup/chiner


使用手册:


https://www.yuque.com/chiner/docs/manual



本篇已收录至 GitHub 上星标 1.3k+ star 的开源专栏《Java 程序员进阶之路》,该专栏风趣幽默、通俗易懂,对 Java 爱好者极度友好和舒适????,内容包括但不限于 Java 基础、Java 集合框架、Java IO、Java 并发编程、Java 虚拟机、Java 企业级开发(Git、SSM、Spring Boot)等核心知识点


​https://github.com/itwanger/toBeBetterJavaer​


star 了这个仓库就等于成为了一名更优秀的 Java 程序员。可以点击上面的链接跳转过去 star 见证一下。

承蒙出版社编辑刘老师的厚爱,如果 star 数超过 1 万就把这个专栏写成书,哈哈哈????,我是口嗨了,接下来就看小伙伴们的,出不出书决定权交给大家了,我就负责把肝交出来,哈哈哈

干掉 PowerDesigner,这款开源数据库设计神器真的绝了_java_25

我是沉默王二,没有什么使我停留——除了目的,纵然岸旁有玫瑰、有绿荫、有宁静的港湾,我是不系之舟