• powerdesigner 将表中name列值复制到comment列 (保留原有comment)


    1. /** 
    2.  * PowerDesigner里面将表中name列值复制到comment列 
    3.  * @see -------------------------------------------------------------------------------------------------------------------- 
    4.  * @see pd中的pdm默认生成sql时,字段是没有注释的..想要注释的话,有2个方法 
    5.  * @see 1.也是推荐的 
    6.  * @see   pdm中双击打开一个Table,到Columns选项卡中,按快捷键Ctrl+U,找到Comment并勾选即可 
    7.  * @see   而且该操作设置一次就行了,以后在新的Table中也会自动出现Comment 
    8.  * @see   设置完毕后,在添加表字段时一并写上注释,这样生成的sql中字段就会有注释了 
    9.  * @see 2.执行vbs脚本 
    10.  * @see   相较第一种方法,该方法缺点是每次生成sql前,都要执行一遍这个脚本 
    11.  * @see   执行方式为Tools-->Execute Commands-->Edit/Run Scripts,或者直接快捷键Ctrl+Shift+X 
    12.  * @see   将下面的脚本拷进去执行一遍,也可以保存为name2comment.vbs(下一次再执行的话,就可以Ctrl+O再选择name2comment.vbs即可) 
    13.  * @see -------------------------------------------------------------------------------------------------------------------- 
    14.  */  
    ' 如果comment为空,则填入name;如果comment不为空,则保留不变.这样可以避免已有的注释丢失.  
      
    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  
            if trim(tab.comment)="" then '如果有表的注释,则不改变它;如果没有表注释,则把name添加到注释中.  
                tab.comment = tab.name  
            end if  
            Dim col ' running column  
            for each col in tab.columns  
                if trim(col.comment)="" then '如果col的comment为空,则填入name;如果已有注释,则不添加.这样可以避免已有注释丢失.  
                    col.comment= col.name  
                end if  
            next  
        end if  
    next  
      
    Dim view 'running view  
    for each view in folder.Views  
        if not view.isShortcut and trim(view.comment)="" 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 
  • 相关阅读:
    29 练习:利用socketserver实现TCP协议下登录认证下载
    28 练习:TCP协议 UDP协议 黏包
    Python基础学习(28)TCP协议的Python实现 UDP协议的Python实现 黏包 利用struct模块解决黏包
    Python 大作业4:选课系统
    Python基础学习(27)网络编程基本概念 C/S架构与B/S架构 OSI七层协议 包的导入
    26 练习题:反射
    Python基础学习(26)classmethod/staticmethod 装饰器 部分内置魔术方法
    25 练习题:super方法 封装 property装饰器 反射
    Python基础学习笔记(25)super方法 封装 property装饰器 反射
    2020 8/10每日日报
  • 原文地址:https://www.cnblogs.com/stromluo/p/8308544.html
Copyright © 2020-2023  润新知