quiland

引用自: https://blog.csdn.net/zaocha321/article/details/7421597 

在powerBuilder中新建一个Physical Data Model,在其中新建一个用户表,信息如下图所示:

 

此时的SQL语句可从其中的Preview视图中得到,如下图所示:

这个时候生成的sql语句是没有注释的,而且sql语句可能也不是适合自己所对应的数据库语言。此时可以通过以下方法来生成注释并且选择所需的数据库语言。
1、为sql生成注释,操作如下,我用的是PowerDesigner12.5,在其中选择Tools----》Excute commands-----》Edit/Run Script打开的窗口中添加以下信息
\'******************************************************************************
\'* File: name2comment.vbs
\'* Purpose: Database generation cannot use object names anymore
\' in version 7 and above.
\' It always uses the object codes.
\'
\' In case the object codes are not aligned with your
\' object names in your model, this script will copy
\' the object Name onto the object Comment for
\' the Tables and Columns.
\'
\'* Title:
\'* Version: 1.0
\'* Company: Sybase Inc.
\'******************************************************************************

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 comment 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
 \'把表明作为表注释,其实不用这么做
 tab.comment = tab.name
Dim col \' running column
for each col in tab.columns
 \'把列name和comment合并为comment
 col.comment= col.name
next
end if
next
Dim view \'running view
for each view in folder.Views
if not view.isShortcut then
 view.comment = view.name
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
点击run后,可以看到刚刚的preview视图窗口中已经如下图所示

 

2、更换数据库sql语句。
选择Database---》change current DBMS,在DBMS中选择对应的数据库,如Microsoft SQL Server 2008,点击确定后,然后选择Database---》Generate Database选项,在弹出的窗口中选择生成sql文件的保存路径,点击确定,则可看到生成的sql语言完全是按照sqlserver2008的标准。

 3. 在PDM时。DataBase >> Edit Current DBMS >> Script >> Object >> Column >> ColumnComment

复制下面到Value

[%OWNER%?[.O:[execute ][exec ]]sp_addextendedproperty [%R%?[N]]\'MS_Description\',
[%R%?[N]]%.q:COMMENT%,
[%R%?[N]]\'user\', [%R%?[N]]%.q:OWNER%, [%R%?[N]]\'table\', [%R%?[N]]%.q:TABLE%, [%R%?[N]]\'column\', [%R%?[N]]%.q:COLUMN%
:declare @CurrentUser sysname
select @CurrentUser = user_name()
[.O:[execute ][exec ]]sp_addextendedproperty [%R%?[N]]\'MS_Description\',
[%R%?[N]]%.q:COMMENT%,
[%R%?[N]]\'user\', [%R%?[N]]@CurrentUser, [%R%?[N]]\'table\', [%R%?[N]]%.q:TABLE%, [%R%?[N]]\'column\', [%R%?[N]]%.q:COLUMN%
]

 

 

分类:

技术点:

相关文章:

  • 2021-11-03
  • 2021-04-03
  • 2021-08-02
  • 2021-12-05
  • 2021-03-30
  • 2021-12-05
  • 2021-11-02
  • 2021-12-22
猜你喜欢
  • 2021-12-07
  • 2021-08-11
  • 2021-11-02
  • 2020-03-23
  • 2021-08-02
  • 2021-08-06
  • 2021-10-22
相关资源
相似解决方案