[转:https://www.jianshu.com/p/566bd4351c30]
1.安装powerdesigner
参考
https://blog.csdn.net/sinat_34104446/article/details/79885141
2 配置逆向工程
2.1 新建模型pdm
新建模型.png
注:DBMS选择MYSQL5.0
配置链接.png
新建数据库链接-01.png
配置链接.png
com.mysql.jdbc.Driver
jdbc:mysql://192.168.0.151:3306/nbspider
测试连接.png
常见问题:
出现Could not Initialize JavaVM!
这是因为powerdesiger需要用32位jdk,如果不想修改环境变量,可以在powerdesiger安装目录配置脚本startup-classpath.bat
Set JAVA_HOME=C:\Java\jdk1.8.0_181-32
Set CLASSPATH =C:\Java\repo\mysql\mysql-connector-java\5.1.45\mysql-connector-java-5.1.45.jar
pdshell16.exe
2.2 根据数据库链接修改model
修改model-01.png
修改model-02.png
-
另外,若导出的数据量结构中需要导出外键等关系,则酌情选择如下选择项。
导出外键配置.png
- 点击确定
选择导出的数据库.png
选择要导出的数据库,可以先选择“ALL users”,全部反选,然后选择要建立逆向工程的数据库,再点击全选即可
2.3 生成逆向工程
生成效果如下:
image.png
编辑表名
image.png
显示注释列
-
进入首选项
显示code.png
- 选择code
image.png
https://blog.csdn.net/qq_17010367/article/details/79212850自定义列属性.png
显示code列.png
设置完毕后效果如下图:image.png
-
在PowerDesigner中,表结构的code,name字段均为英文,不易阅读,若需要将备注中的字段替换到name字段显示,则执行方法:Tools -- Execute Commands -- Edit/Run Script ,则弹出如下图中的对话框:
image.png
image.png
- Vb script代码 如下:
Option Explicit
ValidationMode = True
InteractiveMode = im_Batch
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
'This routine copy name into code for each table, each column and each view
'of the current folder
Private sub ProcessFolder(folder)
Dim Tab 'running table
for each Tab in folder.tables
if not tab.isShortcut then
if len(tab.comment) <> 0 then
tab.name = tab.comment
end if
On Error Resume Next
Dim col 'running column
for each col in tab.columns
if len(col.comment) <>0 then
col.name =col.comment
end if
On Error Resume Next
next
end if
next
end sub
执行后可以将vbscript保存到本地,下次执行时执行本地脚本即可
image.png
- 执行后的效果如下图:
最终效果图.png