PowerDesigner导出SQL时自动生成注释
2016-02-18 14:17
337 查看
在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
2005,点击确定后,然后选择Database---》Generate
Database选项,在弹出的窗口中选择生成sql文件的保存路径,点击确定,则可看到生成的sql语言完全是按照sqlserver2005的标准。
此时的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
2005,点击确定后,然后选择Database---》Generate
Database选项,在弹出的窗口中选择生成sql文件的保存路径,点击确定,则可看到生成的sql语言完全是按照sqlserver2005的标准。
相关文章推荐
- 用户token生成写到redis和js写cookie
- Mysql 修改默认端口
- MongoDB(三)mongoDB下载和安装
- mysql 常用
- oracle 取小数位数
- Bean实体的不规范写法,所导致的奇葩SQLException
- 怎么用sql语句查看某个字段值是否是唯一的
- 利用log4j+mongodb实现分布式系统中日志统一管理
- WampServer修改MySQL密码
- MongoDB从不同角度的分析(顶)
- Ubuntu安装gitlab
- 远程连接命令
- MySQL数据库最大连接数的修改
- MySql日期查询语句详解
- navicat快捷键
- PHP之mongodb学习
- SQLServer存储过程参数值为空时不作为查询条件
- sqlite 取得结果集行号的方法
- sqlite数据库
- redis 五种数据类型的使用场景