PDMan 之数据库逆向解析

本文涉及的产品
全局流量管理 GTM,标准版 1个月
云解析 DNS,旗舰版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
简介: 上次给大家介绍了一款数据库设计建模工具——PDMan(Physical Data Model Manager),作为一款国产开发工具,想要替代 PD(PowerDesigner) 当然不能只是简单的建表就可以,还得可以把现在已建成的数据库表,逆向解析自动生成数据库表信息的能力才行,今天就来说下用 PDMan 如何逆向解析。

上次给大家介绍了一款数据库设计建模工具——PDMan(Physical Data Model Manager),作为一款国产开发工具,想要替代 PD(PowerDesigner) 当然不能只是简单的建表就可以,还得可以把现在已建成的数据库表,逆向解析自动生成数据库表信息的能力才行,今天就来说下用 PDMan 如何逆向解析。

对于大多数人以前开发设计都是用的 PD,现在数据库里可能已经有几十上百张表,想换成 PDMan 做新增表的数据库设计还好,如果想对以前的表进行改造该怎么办?总不能再把以前的表一个个都在 PDMan 里再加一遍吧。当然不能,把已有数据库导入到 PDMan 就需要数据库逆向解析了。

配置数据库连接

数据库连接配置非常简单,首先我们再新建一个项目,先不要在这个项目建任何库表信息。

65.jpg

然后我们点工具栏中的数据库连接图标,进入数据库连接配置窗口,这个窗口左侧+- 按钮是用来增删数据源,然后右侧展示当前数据源的配置信息。下图显示的是 Mysql 的配置信息。

66.jpg

可以看到,基本上你要做的就是修改远程数据库连接IP和端口,以及用户密码就可以了。配置好然后单击测试按钮检查返回是否连接成功。当然除了 MySQL 数据库,它还支持 OracleSQL ServerPostgreSQL 等多种类型,并且可以同时创建多个连接,如下图:


67.jpg

逆向解析已有数据库

上面的数据库设置配置成功后,接下来就是见证奇迹的时候了,开始我们的逆向解析。打开菜单栏模型标签页,单击数据库逆向解析图标,弹出解析已有数据库的窗口,选择我们刚配置好的,需要逆向解析的数据库。


68.jpg69.jpg


在下拉框旁边有说明,暂不支持索引解析生成,所以索引可能得自己想法搞了。下面还有个下拉框逻辑名格式,这里支持全大写全小写不处理三种形式,这个可以按自己的习惯来选择。我之前就选的全大写,结果新建或修改的表名和字段名都是大写,用起来还是挺麻烦,不习惯后来就改用全小写了。

70.jpg

OK,一切准备就绪,单击下一步就可以开始逆向解析了,它会把你配置的库里所有表都逆向生成出来,为我们节省了不少时间。

71.jpg


等待一会逆向成功后,现有数据库中的所有表就出现在了左侧栏中,如下图:

72.jpg


至此大功告成!然后我们看下模型标签页中,除了逆向解析,还有导出文档导出DDL脚本导出JSON的功能。

73.jpg


其中导了导出文档功能又支持导出HTML导出Word导出MARKDOWN类型的文档,是不是很强大,如下图:

74.jpg


下面再看下导出DDL脚本,这个功能也很实用,用来将你创建好的数据模型导出不同的数据库格式 DDL 脚本。也就是说你从 Oracle 库中逆向解析出的模型,可以通过这个功能导出 MySql 数据库类型的脚本。

关系图

假如你的数据库里有几十上百张表,想要直观的了解各表之间的关系该怎么做?接下来就为大家介绍下这个关系图功能。图中的表都是从左侧数据表列表中拖动过来的,效果如下图:

75.jpg


然后可以通过从一个表字段拖动鼠标到另一表的字段上,来建立表之间字段的关联关系。有了这个关系图就可以很直观的看出各表之间是怎么关联了。在关系图打开的时候,菜单下的标签页会自动切到关系图标签页,里面可以进行放大、缩小、拖拽等操作。

76.jpg


这里说下导出图片按钮,顾名思义就是为了导出关系图的,试想如果你有几十张表的关系,那仅凭截图是截不全的,所以这个导出关系图还是很实用的。这里它也支持导出整图,或者导出可见区域内的图。


77.jpg

有了关系图,是不是对整体项目的了解更直观了?

总结

总的来说,PdMan 在数据库逆向解析和关系图功能上都要比 PD 好很多,确实是个很实用的工具。当然除了这些,它的实用还有数据库版本控制,这是个很让人头痛的问题,下次我们接着聊。OK,今天就聊这些,如果你喜欢记得点 在看

目录
相关文章
|
6月前
|
运维 Oracle 关系型数据库
screw生成数据库文档
screw生成数据库文档
83 12
|
4月前
|
SQL 存储 关系型数据库
数据库学习方法
【8月更文挑战第25天】数据库学习方法
38 0
|
6月前
|
SQL 数据库 数据库管理
逆向学习数据库篇:多表查询技术详解
逆向学习数据库篇:多表查询技术详解
58 0
|
SQL 存储 安全
PHPMySQL防注入 如何使用安全的函数保护数据库
在进行PHP编程开发时,安全性一直是开发人员必须注意的问题,其中最重要的是防止SQL注入攻击。SQL注入攻击是指通过输入恶意代码来攻击数据库的一种方式,攻击者通过输入SQL语句来绕过程序的安全机制,达到控制和操作数据库的目的。为了避免这种安全问题的发生,本文将介绍如何使用安全的函数保护数据库。
80 0
|
SQL 缓存 关系型数据库
数据库查找及其优化
所采用的查询语句完全一致。不仅包括查询的字段,也包括查询的条件。如果用户查询一个产品信息表,使用了查询条件,只查询最近一个月新建的产品信息。显然此时查询的结果是查询的子集,应该可以使用数据管理。数据库仍然会先重新解析SQL语句,然后从硬盘上的数据文件中去获取数据
69 0
|
存储 算法 关系型数据库
【数据库专题】如何理解数据库的索引?
【数据库专题】如何理解数据库的索引?
|
Oracle 关系型数据库 MySQL
数据库中一些用到函数记录
数据库中一些用到函数记录
136 0
|
SQL 存储 关系型数据库
数据库基础(一)----- 数据库的基本概念,SQL分类
数据库基础(一)----- 数据库的基本概念,SQL分类
数据库基础(一)----- 数据库的基本概念,SQL分类
|
SQL JSON Oracle
PDMan 之数据库逆向解析
上次给大家介绍了一款数据库设计建模工具——PDMan(Physical Data Model Manager),作为一款国产开发工具,想要替代 PD(PowerDesigner) 当然不能只是简单的建表就可以,还得可以把现在已建成的数据库表,逆向解析自动生成数据库表信息的能力才行,今天就来说下用 PDMan 如何逆向解析。
642 0
PDMan 之数据库逆向解析
|
存储 算法 NoSQL
从零开始写数据库:500行代码实现 LSM 数据库
前言LSM-Tree 是很多 NoSQL 数据库引擎的底层实现,例如 LevelDB,Hbase 等。本文基于《数据密集型应用系统设计》中对 LSM-Tree 数据库的设计思路,结合代码实现完整地阐述了一个迷你数据库,核心代码 500 行左右,通过理论结合实践来更好地理解数据库的原理。SSTable(排序字符串表)在上篇文章从零开始写KV数据库:基于哈希索引中,我们基于哈希索引实现了一个数据库,它
3763 0
从零开始写数据库:500行代码实现 LSM 数据库
下一篇
DataWorks