学习自:https://www.cnblogs.com/xmyjcs/p/8536233.html
文章目录
- Reverse Engineer
- 格式化模型
- 执行 VBS 脚本
Reverse Engineer
下面 DBMS 可以通过 ODBC(Open Database Connectivity,开放数据库连接)连接,
需要自己先去安装,网上教学较多,记得匹配 powerdesign的 32位或者64位
DBMS 的版本跟mysql貌似没啥关系,我的 win mysql8.0 可以正常连接~
这里选择想逆向的库:
接着确定,然后就到该库的表选择了:
这样物理模型就生成了!当然,可能comment没有显示出来,可以接着参考下文的脚本工具~
通过 Tools 中的生成选项可以立即生成相关模型(如逻辑模型等)
格式化模型
这里可以调整显示顺序等
执行 VBS 脚本
(可以不看,直接用)
VBS 是基于 Visual Basic 的脚本语言,全称 Microsoft Visual Basic Script Edition,即微软公司可视化 BASIC 脚本版。
下面脚本主要用于处理物理数据模型(PDM),将模型中的列名和视图名替换为对应的注释内容,同时对注释为空的列使用占位符处理,并且支持递归处理子包。
Option Explicit
ValidationMode = True
InteractiveMode = im_BatchDim blankStr
blankStr = Space(1)Dim mdl ' the current model
' get the current active model
Set mdl = ActiveModel
If (mdl Is Nothing) ThenMsgBox "There is no current Model "
ElseIf Not mdl.IsKindOf(PdPDM.cls_Model) ThenMsgBox "The current model is not an Physical Data model. "
ElseProcessFolder mdl
End IfPrivate Sub ProcessFolder(folder)On Error Resume NextDim Tab 'running tableFor Each Tab In folder.tablesIf Not tab.isShortcut ThenDim col ' running columnFor Each col In tab.columnsIf col.comment = "" Or Replace(col.comment, " ", "") = "" Thencol.name = blankStrblankStr = blankStr & Space(1)Elsecol.name = col.commentEnd IfNextEnd IfNextDim view 'running viewFor Each view In folder.ViewsIf Not view.isShortcut Thenview.name = view.commentEnd IfNext' go into the sub-packagesDim f ' running folderFor Each f In folder.PackagesIf Not f.IsShortcut ThenProcessFolder fEnd IfNext
End Sub
效果: