前言
安装前期准备工作(下载地址):
- 64位PowerDesigner16.7:安装文件
- pdflm16.dll:破解文件
一、PowerDesigner安装
二、PowerDesigner破解
将“pdflm16.dll”复制并覆盖到软件安装的根目录中。
三、逆向工程(Oracle举例)
新建一个模型,如图所示
选中当前模型 test. 然后在菜单栏里选择database->update model from database
配置数据源
ODBC配置较为繁琐,故以JDBC为例
连接名:随便起即可
用户名:数据库用户名
驱动类:不同ojdbc版本有所不同,本文以ojdbc6为例
连接串:jdbc:oracle:thin:@(description=(address=(protocol=tcp)(port=端口)(host=IP))(connect_data=(service_name=服务名)))
驱动jar:指定具体存放目录(ojdbc6下载地址)
一路点击ok 后,选择connect,会列出数据库里的所有表,在列表里选择要逆向生成的表模型。
可以选择表,视图等方式的导出,选择完成后,点击OK即可。
四、PowerDesigner常用配置
1.显示Comment注释
PowerDesigner默认显示的列是名称及类型,如下图所示:
现在需要显示注释列,以便使得ER图更加清晰。但是PowerDesigner勾选Comment显示没有效果,所以通过以下几步来处理:
双击表,弹出表属性对话框,切到ColumnTab,默认是没显示Comment的,显示Comment列
有了Comment列,并补充Comment信息
确定保存,打开菜单 Tools>Display Perferences
调整显示的Attribute
OK,保存,确定,退出设置页,应用到所有标识,可以看到表变化
打开菜单Tools>Execute Commands>Edit/Run Script… 或者用快捷键 Ctrl+Shift+X,复制下列代码,粘贴
Option Explicit
ValidationMode = True
InteractiveMode = im_Batch
Dim blankStr
blankStr = Space(1)
Dim mdl ' the current model
' get the current active model
Set mdl = ActiveModel
If (mdl Is Nothing) Then
MsgBox "There is no current Model "
ElseIf Not mdl.IsKindOf(PdPDM.cls_Model) Then
MsgBox "The current model is not an Physical Data model. "
Else
ProcessFolder mdl
End If
Private sub ProcessFolder(folder)
On Error Resume Next
Dim Tab 'running table
for each Tab in folder.tables
if not tab.isShortcut then
tab.name = tab.comment
Dim col ' running column
for each col in tab.columns
if col.comment = "" or replace(col.comment," ", "")="" Then
col.name = blankStr
blankStr = blankStr & Space(1)
else
col.name = col.comment
end if
next
end if
next
Dim view 'running view
for each view in folder.Views
if not view.isShortcut then
view.name = view.comment
end if
next
' go into the sub-packages
Dim f ' running folder
For Each f In folder.Packages
if not f.IsShortcut then
ProcessFolder f
end if
Next
end sub
执行完,可以看到第3列显示备注,效果如下:
原理就是把显示name的列的值,替换成注释的值,所以下次如果调整comment,还有重新执行脚本,所以最好放在最后执行。
结尾
- 感谢大家的耐心阅读,如有建议请私信或评论留言。
- 如有收获,劳烦支持,关注、点赞、评论、收藏均可,博主会经常更新,与大家共同进步