步骤:
1、创建DBMS
Powerdesigner界 面-tools-Resources-DBMS,点击左上角的New,选择copy from templete,如果你的数据库是sql server 2005,选择系统自带的SQL server 2005,如果是sql server 2008,选择系统自带的sqlsv2k8.xdb。本例中是sql server 2008 r2,故选择 sqlsv2k8.xdb,起一个新名字,如 SQL2008_Mod_201105。
2、建立数据源,逆向生成测试,顺利成功!
此时再生成数据库脚本时,会自动将Comment中的中文注释带入到脚本中。
美中不足的是Name还是英文 ,在一个包中查看表时,感觉怪怪的。
有两个解决办法:
3-1、改进脚本
Powerdesigner界面-Database-Edit Current DBMS
如下: (本文以sql server 2008为例,sql server 2005类同。 )
将表的Name换为Comment
将列的Name换为Comment
此时生成的效果最为理想。
3-2、利用vbs脚本完成。
在Sybase安装路径/VB Scripts 下新建Comments2Name.vbs,内容如下:
- 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
在生成的PDM中,Powerdesigner界面-tools-Execute Cmmands-Edit/Run Scripts 在打开的界面中,左上角,选择打开,Ctrl+O,选取刚才的 Comments2Name.vbs,并Run,效果同上。