您的位置:首页 > 数据库 > Oracle

用PowerDesigner逆向从Oracle导出pdm

2015-11-26 10:20 567 查看
逆向工程首先得保证你的监听已经在 tnsnames.ora 中配置好了。否则是无法导出的。怎么配置就不说了。

配置好了就是下图这样的。



打开PowerDesigner以后,新建文件 File - New Model ,然后如下图:



创建好了以后是这个样的,如图:



创建好了文件以后,开始链接数据库,进行导出。还是如图:



下图就是命名文件以及选择数据库版本:



点击完确定以后,到了这个页面,如果是第一次进入,得点击红框进去配置,第二次的话就直接点确定就行。如图:



进去以后,设置数据源,如下:



点击configuration,进行配置,如图:



点击红框的按钮,新建,如图:



注意:这里选择系统数据源,如果你的这个系统数据源是灰色的不能进行选择的话, 那么就先关闭powerDesigner 以管理员的身份运行,然后就可以了。

下一步,如图:



注意:找到你自己对应的数据库

下一步,如图:



注意:红框两项是必填的。填完以后还可以进行 Test connection 测试链接。 成功以后点击确定,回到如下页面



然后点击链接,之后就可以选择你要导出的表了。

导完表以后是吧所有字段导出来了,但是没有任何注视,看着别扭到死,下面的操作就会自动把字段注释加进来。将如下代码在图中执行:



代码:

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. name
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


然后就大功告成了~~~
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: