来源:
Python技术
上次给大家介绍了一款数据库设计建模工具——PDMan(PhysicalDataModelManager),作为一款国产开发工具,想要替代PD(PowerDesigner)当然不能只是简单的建表就可以,还得可以把现在已建成的数据库表,逆向解析自动生成数据库表信息的能力才行,今天就来说下用PDMan如何逆向解析。
对于大多数人以前开发设计都是用的PD,现在数据库里可能已经有几十上百张表,想换成PDMan做新增表的数据库设计还好,如果想对以前的表进行改造该怎么办?总不能再把以前的表一个个都在PDMan里再加一遍吧。当然不能,把已有数据库导入到PDMan就需要数据库逆向解析了。
配置数据库连接
数据库连接配置非常简单,首先我们再新建一个项目,先不要在这个项目建任何库表信息。
然后我们点工具栏中的数据库连接图标,进入数据库连接配置窗口,这个窗口左侧+、-按钮是用来增删数据源,然后右侧展示当前数据源的配置信息。下图显示的是Mysql的配置信息。
可以看到,基本上你要做的就是修改远程数据库连接IP和端口,以及用户密码就可以了。配置好然后单击测试按钮检查返回是否连接成功。当然除了MySQL数据库,它还支持Oracle、SQLServer、PostgreSQL等多种类型,并且可以同时创建多个连接,如下图:
逆向解析已有数据库
上面的数据库设置配置成功后,接下来就是见证奇迹的时候了,开始我们的逆向解析。打开菜单栏模型标签页,单击数据库逆向解析图标,弹出解析已有数据库的窗口,选择我们刚配置好的,需要逆向解析的数据库。
在下拉框旁边有说明,暂不支持索引解析生成,所以索引可能得自己想法搞了。下面还有个下拉框逻辑名格式,这里支持全大写、全小写和不处理三种形式,这个可以按自己的习惯来选择。我之前就选的全大写,结果新建或修改的表名和字段名都是大写,用起来还是挺麻烦,不习惯后来就改用全小写了。
OK,一切准备就绪,单击下一步就可以开始逆向解析了,它会把你配置的库里所有表都逆向生成出来,为我们节省了不少时间。
等待一会逆向成功后,现有数据库中的所有表就出现在了左侧栏中,如下图:
至此大功告成!然后我们看下模型标签页中,除了逆向解析,还有导出文档、导出DDL脚本和导出JSON的功能。
其中导了导出文档功能又支持导出HTML、导出Word、导出MARKDOWN类型的文档,是不是很强大,如下图:
下面再看下导出DDL脚本,这个功能也很实用,用来将你创建好的数据模型导出不同的数据库格式DDL脚本。也就是说你从Oracle库中逆向解析出的模型,可以通过这个功能导出MySql数据库类型的脚本。
关系图
假如你的数据库里有几十上百张表,想要直观的了解各表之间的关系该怎么做?接下来就为大家介绍下这个关系图功能。图中的表都是从左侧数据表列表中拖动过来的,效果如下图:
然后可以通过从一个表字段拖动鼠标到另一表的字段上,来建立表之间字段的关联关系。有了这个关系图就可以很直观的看出各表之间是怎么关联了。在关系图打开的时候,菜单下的标签页会自动切到关系图标签页,里面可以进行放大、缩小、拖拽等操作。
这里说下导出图片按钮,顾名思义就是为了导出关系图的,试想如果你有几十张表的关系,那仅凭截图是截不全的,所以这个导出关系图还是很实用的。这里它也支持导出整图,或者导出可见区域内的图。
有了关系图,是不是对整体项目的了解更直观了?
总结
总的来说,PdMan在数据库逆向解析和关系图功能上都要比PD好很多,确实是个很实用的工具。当然除了这些,它的实用还有数据库版本控制,这是个很让人头痛的问题,下次我们接着聊。OK,今天就聊这些,如果你喜欢记得转发、留言、点赞。