有些时候我们的powerdesigner以jdbc的形式链接本地数据库可能会失败,这时候我觉得从sql文件中生成物理模型是个很不错的方法
1.打开powerdesigner,文件->->reverse engineer->->database
2.选择对应的数据库,我这里以oracle11g为例,选择share the DBMS defintion点击确定进入下边的页面
3.点击如上箭头指示的按钮添加要生成屋里模型的sql文件(就是建表语句,可直接从oracle中导出),确定
4.但是生成的物理模型name是字段名,不是我们想要的comment名,接下来进行如下操作 工具->execute commands->edit/Run script
5.粘贴如下的命令并执行
Option Explicit ValidationMode = True InteractiveMode = im_Batch Dim blankStr blankStr = Space(1) 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 Private sub ProcessFolder(folder) On Error Resume Next Dim Tab 'running table for each Tab in folder.tables if not tab.isShortcut then tab.name = tab.comment Dim col ' running column for each col in tab.columns if col.comment = "" or replace(col.comment," ", "")="" Then col.name = blankStr blankStr = blankStr & Space(1) else col.name = col.comment end if next end if next Dim view 'running view for each view in folder.Views if not view.isShortcut then view.name = view.comment 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
6.搞定后效果如下