软件版本
PowerDesigner 16
oracle11g
第一步:
---> 在下面弹出框中 选择自己数据库版本,点击"确定"
--->
-->
-->如图中选择,点击 Modify 弹出如下对话框
--》填写相对应的数据连接信息,点击“Test Connection” 按钮,测试数据源是否能连接数据库
-->测试成功,点击 确定 按钮
-->
-->点击 确定
--如上图,点击OK 然后生成 PDM 文件。
如果想给 表名,字段名 添加注释,需要如下操作。
修改导出sql
导出sql 为:
{OWNER, TABLE, TABLE_TYPE, COMMENTS}
select
t.owner,
t.table_name,
c.table_type,
c.comments
from
sys.all_all_tables t,
sys.USER_TAB_COMMENTS c
where
not exists (select 1 from sys.all_mviews s where s.owner = t.owner and t.table_name in (s.mview_name, s.update_log))
and t.iot_name is null
and nvl(t.dropped, 'NO') = 'NO'
and t.table_name = c.table_name(+)
and substr(t.table_name, 1, 5) not in ('MLOG$', 'RUPD$')
[ and t.table_name=%.q:TABLE%]
[ and t.owner=%.q:SCHEMA%]
order by
t.owner, t.table_name
以上,重新执行开始 导出pdm ,表名会自动添加注释。
------------------------------------------------------------------------------------------------------------------------------------------------------------
使用脚本把 name 设置为 comments
在此操作之前,先设置code不跟随name改变。选择菜单中Tools->General Options...,在打开的窗口中找到Dialog,去掉Name to Code mirroring 前面的勾,点击OK
选择菜单中Tools->Excute Commands -> Edit/Run Scripts... 在打开的窗口中粘贴如下脚本,点击Run按钮,等待执行完成即可。
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