powerdesigner 同步mysql 报错_PowerDesigner导出SQL时自动生成注释

本文介绍了如何在PowerDesigner中为SQL语句添加注释,并切换到特定数据库语言,例如从MySQL到SQL Server 2005。通过执行自定义脚本批量设置对象注释,然后更改当前DBMS,可以生成符合目标数据库标准的SQL脚本。
摘要由CSDN通过智能技术生成

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

e76de38b7c1d701157160c9aa670a971.png

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

e663264653ed79fba22545ee578fdef0.png

这个时候生成的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视图窗口中已经如下图所示

bf75cf1fd3b61c6b823b07b00b338270.png

2、更换数据库sql语句。

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值