使用powerDesigner反向工程生成Entity

由于业务需要将数据库里面的表导出来生成pdm数据模型,于是查找了一下方法,总结步骤如下:

1、打开plSQL,上方工具栏tools->ExportUser Objects使用powerDesigner反向工程生成Entity

 

2、选中你需要导出的表,选择文件位置,导出SQL文件

使用powerDesigner反向工程生成Entity

 3、打开powerDesigner,新建模型

使用powerDesigner反向工程生成Entity

4、选择Model types ->Physical Data Modal ->Physical Diagram,自行修改文件名,保存

 使用powerDesigner反向工程生成Entity

5、打开File->Reverse Engineer->Database

使用powerDesigner反向工程生成Entity6、看到如下弹窗,点击确定

使用powerDesigner反向工程生成Entity

7、 添加SQL文件,点击运行

使用powerDesigner反向工程生成Entity

8、完成

使用powerDesigner反向工程生成Entity

9、 如果数据库中的表有字段备注,希望直接用备注作为名称,可以打开Tools->Execute Comments->Edit/Run Script

使用powerDesigner反向工程生成Entity

10、 复制以下代码到编辑器中:

 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 tab.comment ="" then

else

tab.name=tab.comment

on error resume next

end if

Dim col ' running column

for each col in tab.columns

if col.comment="" then

col.name=col.name

else

col.name=col.comment

on error resume next

end if

next

end if

next

Dim view 'running view

for each view in folder.Views

if not view.isShortcut then

if view.comment="" then

view.name=view.name

else

view.name=view.comment

on error resume next

end if

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

使用powerDesigner反向工程生成Entity

11、运行,搞定

使用powerDesigner反向工程生成Entity