出门莫恨无人随,书中车马多如簇。这篇文章主要讲述PDManer [元数建模]-v4.0 :一款简单好用的数据库建模平台相关的知识,希望能为你提供帮助。
[PDManer元数建模-4.0],历时四年,持续升级,工匠精神,做一款简单好用的数据库建模平台。
元数建模平台,使用React+Electron+java技术体系构建。[PDMan-v2] --> [CHINER-v3] --> [PDManer-v4],连续四年,产品一直保持很好的传承和延续。
1. PDManer的故事
- 2018年初,因PowerDesigner对我们需求不能满足,也因为购买商业授权的不便利,我和几位社区好友,创立了一个松散的组织,用一个半月时时间完成了PDMan的1.0版本发布,解决了从无到有的问题。
- 2018年5月,推出了PDMan第一个开源公开版,中间持续阶段性更新,直到2019年1月,不再更新。
- 因前第一个版本时间仓促,设计考虑不充分,后续优化升级非常困难,我们于2019年12月,规划了另一个全新的版本。
- 2019年底,我们不到三万块启动资金,启动创业,生存之难可以想像,当情怀遇上生存发展,饿着肚讲理想,真的很难。期间,我们团队几经折腾周转,数次濒临解散。幸得有好友关照,找了两个项目做,核心人员一分为二,一部分去杭州,另一部分在远走塞北,我们的吃饭问题暂时解决了。
- 在此期间,产品停止更新,但是对产品的思考一直在持续,同时也结识了更多志趣相投的朋友加入,我们利用业余时间,完成了技术架构设计,界面原型设计,以及关键核心模块的开发编码。
- 2021年7月17日,终于推出全新的3.0版本,为区别于PDMan2版本,因为一些特殊的原因,不得已而使用新名称,我们使用了[CHINER元数建模]作为新产品的名称,公开发行。
- 目前,每一天,有50000家以上的组织或个人在使用CHINER在设计他们的数据库。
- CHINER拼写虽然看上去比较协调,但是发音存在二义性,用户接受度不高,很多用户还是习惯叫他PDMan,在构建4.0版本时,我们想延续用户对PDMan的习惯,同时,也希望能够保留CHINER的某些记忆,英文名PDManer=PDMan+er(chiner的er部分,ER也表示关系图的意思),“元数建模”的中文名称依然延续,名称需要精简,拿掉chi表示中国的前缀部分,使用中文能更加明确这是一个中国小团队的作品,因此4.0版本之后,产品名称:[PDManer元数建模]就此确定,承接了PDMan以及CHINER的所有功能,并且进行延续、精进。
- 2022年4月17日,我们发布“PDManer元数建模-v4.0”版本,相对于3版本,我们增加了可定制的版本管理以及可定制的代码生成器(可生成Java,C#,等相关程序代码),一直被用户吐槽的mac版本下图标过大的问题,也一并解决了。
- PDManer产品,主要针对单机用户,我们会持续保持他的开源免费。面向团队的版本,后续会逐步推出。
- 数据表版本管理,添加、更改、删除字段以及表信息后,会自动生成变更脚本。
- 代码生成器,目前支持Mybatis,MybatisPlus,C#,JavaJPA等几个常见语言,在完成表设计之后,可以自动生成增删改查相关代码,并且可生成至相关目录
- 批量修改数据表名功能
- 用户可以自行添加或者编辑新的数据库模板,添加新的代码生成器
- MacOS下,修正了图标过大的问题
- 增加Hive的DDL生成的参考模板
- 批量调整及以修改数据表名
文章图片
3.1.2 版本变更脚本定制
文章图片
3.2 代码生成3.2.1 代码模板
文章图片
3.2.2 生成预览
文章图片
3.2.3 生成至目录
文章图片
4. 功能介绍预览截图
文章图片
文章图片
文章图片
4.1 入门参考案例以及文档4.1.1 操作手册
文章图片
??手册地址???
文章图片
4.1.2 入门参考案例
首页自带两个典型参考案例,方便用户快速了解软件支持的功能以及特性。
文章图片
4.2 管理对象4.2.1 数据表及字段
提供简洁直观的数据表以及字段管理及操作,左侧列表支持拖动排序,数据表更多设置支持增加表备注,扩展属性列表,例如提供对Hive的支持,如下图:
文章图片
4.2.2 多表关联的视图
视图由多个表结合而成,支持多表以及字段的选择,如下图:
文章图片
4.2.3 可定制的数据类型及数据域
可扩展的数据类型,并且支持多种数据库方言的适配,如下图:
文章图片
数据域,用于设置同一类具有特定业务含义的数据类型,如下图:
文章图片
文章图片
4.2.4 数据标准(字段库)
标准字段库用于解决常用字段记录,方便用户建立数据表时,能够从常用字段库里直接拖入数据表中。 标准字段库可以用户自行添加,也可以从现有数据表中移到标准字段库中,如下图所示:
文章图片
文章图片
标准字段库支持导出JSON文件,也支持从JSON文件中导入,以解决共享交流问题。
4.2.5 数据字典(代码映射表)
增加了数据字典支持,用于解决对字段元数据更清晰的解析阐述,如下图:
文章图片
数据表字段可以直接关联数据字典,如下图所示:
文章图片
数据字典导出SQL,如下图所示:
文章图片
文章图片
4.3 多模块模式以及不分模块模式简单项目,不需要分模块,直接分为数据表,视图,关系图,数据字典即可,复杂项目需要折分为一个一个独立的模块,系统对这两种形式均给予支持。 简单模式,如下图:
文章图片
分模块形式,如下图:
文章图片
4.4 关系图4.4.1 ER关联关系图
数据实体关联关系图,该关联关系图需要人工手动维护,如下图所示:
文章图片
4.4.2 简单的概念模型图
支持简单的概念模型图,概念模型图实体只保存在关系图上,不保持实体对象,如下图所示:
文章图片
文章图片
概念模型图,主要用于快速勾勒系统的关键业务对象关系图,用于快速整体理解数据模型。
4.4.3 同一模块多张关系图
同一个模块,可以支持多张多种形式的关系图:
文章图片
4.5 画布设计界面4.5.1 分组框及以备注框
分组框,用于对数据表或者实体进行分类,能够更清晰的了解数据表的层次结构,如下图:
文章图片
4.5.2 文字以及背景颜色设置
备注框,为普通矩形框,用于对数据表或者业务场景进行解释说明,如下图:
文章图片
4.6 代码模板4.6.1 不同数据库方言的DDL
通过代码模板引擎,实现可扩展的数据库方言支持,如下图:
MySQL:
文章图片
PostgreSQL:
文章图片
ORACLE:
文章图片
SQLServer:
文章图片
4.6.2 扩展属性支持类似Hive
【PDManer [元数建模]-v4.0 (一款简单好用的数据库建模平台)】
文章图片
4.6.3 JavaBean代码生成
文章图片
4.6.4 可定制化可编辑的代码模板引擎
代码模板引擎基于doT.js构建,如下图:
文章图片
提供代码预览编辑,以便能够及时预览代码模板的效果,如下图:
文章图片
4.7 生态对接-导入4.7.1 数据库逆向
连接数据库,逆向解析数据库,支持数据库中文注释的解析。 连接数据库,如下图:
文章图片
解析数据列表清单,如下图:
文章图片
解析数据表结果,如下图:
文章图片
4.7.2 导入PDMan文件
支持PDMan的导入,支持数据表,关系图,数据域的高度还原。 导入列表选择,如下图:
文章图片
导入后结果,如下图:
文章图片
PDMan原始情况,如下图:
文章图片
4.7.3 导入PowerDesigner文件
导入PowerDesigner,支持数据表,数据域的高度还原(不支持关系图还原),如下图:
文章图片
数据表选择,如下图:
文章图片
最终导入后结果,如下图:
文章图片
4.8 生态对接-导出4.8.1 导出DDL
导出DDL,用于解决一次性导出指定数据表,针对指定数据库方言的导出,如下图:
文章图片
4.8.2 导出WORD文档及模板可定制
将当前数据表,关系图,数据字典导出至WORD文档,如下图:
文章图片
导出结果,如下图:
文章图片
文章图片
4.8.3 关系图导出图片
实现将当前画布的关系图,导出为PNG图片。
5. 全局搜索及定位字段及关键字,数据字典等的全局搜索,如下图:
文章图片
6. 更多特性6.1 多语言
中文,如下图:
文章图片
英文,如下图:
文章图片
语言设置,如下图:
文章图片
6.2 新建表默认初始化字段
文章图片
6.3 表编辑一次性设置多个数据域
文章图片
6.4 批量修改表名
文章图片
文章图片
6.5 支持国产数据库,如达梦
文章图片
文章图片
7. 开源协议说明元数建模,采用??木兰公共许可证, 第2版??开源协议,请按协议约定使用本产品。
8. 对社区用户的承诺8.1 历史承诺盘点:2018年3月,在苏州源创会,给用户承诺后续将完成以下功能:
文章图片
- 1-提升用户体验
- 1-1 提升界面美观[完成]
- 1-2 优化用户操作[完成]
- 2-更多模型支持
- 2-1 导入ERWin[未完成,视用户需求,再作决定]
- 2-2 导入PowerDesigner[完成]
- 3-小型专业化社区[部分完成]
- PDManer元数建模,作为一款国产免费开源数据库建模工具,源代码以及编译后的程序,提供给个人或者组织使用。
- 在此基础上二次开发,再次出售,需遵守??木兰公共许可证, 第2版??。
- 为简化用户使用,PDManer提供编译后的安装包。
- 云服务Web在线版: 除保留原来的所有功能外,增加团队协作,版本管理,行业词库,智能纠正,WebHooks等团队及企业级应用功能。
- 企业私有部署Web版:功能与Web在线版相同,提供企业私有化部署,满足企业数据代码资产要求内网部署的要求。
10.2 下载及交流同发知乎: ??知乎??
推荐阅读
- python之uWSGI和WSGI
- Docker下RabbitMQ四部曲之三(细说java开发)
- 高级程序员与初级程序员差别在哪里()
- Docker下RabbitMQ四部曲之四(高可用实战)
- #导入Word文档图片#值得收藏:当向数据库导入大量数据时,mysql主键唯一键重复插入,如何丝滑操作并不导入重复数据呢
- django插件之django-import-export
- SpringCloud Alibaba Sentinel 限流详解
- Navicat for MySQL免费版安装配置教程(超级详细保姆级)
- django性能分析工具之silk