zoukankan      html  css  js  c++  java
  • Powerdesigner设计表生成SQL脚本(带有注释)

    背景

    ​ 我们在PowerDesigner中设计好数据库表,并且每个表中的字段都会有相应的注释,可是在我们在导出sql语句后,却发现没有添加字段注释的相关sql语句(例如:EXECUTE sp_addextendedproperty N'MS_Description', N'字段注释', N'user', N'dbo', N'table', N'表名', N'column', N'字段名'

    解决方案

    ​ 步骤: Powerdesigner中选择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
  • 相关阅读:
    Sqlmap使用详解
    WEB漏洞学习手册
    量压形态的使用方法
    sql执行过程及常见优化手段
    什么是JavaScript 函数作用域
    git http 拉取代码 自动输入用户名和密码
    PHP 报文件写入无权限 file_put_contents failed to open stream: Permission denied in xxxxx on line 2
    记一次 解决PHP Linux服务器报 打开文件数过多的异常
    微信开发 坑 记录帖
    python 安装 cv2 注意事项 填坑 opencv-python 找不到指定的模块
  • 原文地址:https://www.cnblogs.com/ZQWelcomeIndex/p/7562126.html
Copyright © 2011-2022 走看看