PowerDesigner 16 逆向生成 oracle pdm
阿新 • • 發佈:2019-02-01
軟體版本
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