PowerDesigner默认显示的列是Name及类型,如下图示:
现在需要显示注释列,以便使得ER图更加清晰。但是PowerDesigner勾选Comment显示没有效果,所以通过以下几步来处理:
双击表,弹出表属性对话框,切到Columns,默认是没显示Comment的,显示Comment列,操作如下:
确定保存,打开菜单 Tools>Display Perferences
勾选name,调整code
确定后,如下
打开菜单Tools>Execute Commands>Edit/Run Script.. 或者用快捷键 Ctrl+Shift+X,执行下面的代码:
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
确定后,如下:
原理就是把显示name的列的值,替换成注释的值,所以下次如果调整comment,还要重新执行脚本,所以最好放在最后执行。
切换database类型
数据库表脚本包含双引号问题的解决方法
在 PowerDesigner 中的 Database -> Edit Currnet DBMS -> Script -> Sql -> Format -> CaseSensitivityUsingQuote 中选择 No,即可: