zoukankan      html  css  js  c++  java
  • [转]PowerDesigner表结构和字段大小写转换

    原文地址:https://blog.csdn.net/u010216641/article/details/48712503

    ##PowerDesigner去除双引号##

    平时经常用PowerDesigner设计表结构。但是有时候在设计表结构和字段的时候经常是大小写混合用。导致一张表中有的字段是大写有的是小写。PowerDesigner在设计表示如果表明或字段名是小写。则在生成SQL时会自动在表名上使用双引号。例如:

    /*==============================================================*/ 
    /* Table: "test"                                                */ 
    /*==============================================================*/ 
    create table "test"  ( 
       "username"           varchar2(24), 
       "full_name"          varchar2(24) 
    ); 

    ORACLE会认为该表和字段使用小写字母命名。ORACLE默认是使用大写字母的,这样会导致有些用法用不了。

    一般可以在生成sql文后把所有双引号(“)去掉.
    其实powerdesigner中可以设置生成sql文的时候不自动添加双引号(“).
    设置方法:

    1. 设置当前为oracle
      这里写图片描述

    2. 选择Database->Edit Current DBMS菜单
      这里写图片描述
      这里写图片描述

    3. 选中General选项卡,依次打开Script->Sql->Fomat->CaseSensitivityUsingQuote
      这里写图片描述

    4. 将右侧的Value值选中No
      这里写图片描述

    5. 点击应用,确定.

    这样生成sql文时,就不会自动加上双引号(“).

    下面提供段代码可以把PowerDesigner中的小写字母变为大写字母。
    代码如下:

    Option Explicit  
    ValidationMode = True  
    InteractiveMode = im_Batch  
    Dim mdl ' 当前模型  
    ' 获取当前模型  
    Set mdl = ActiveModel  
    If (mdl Is Nothing) Then  
       MsgBox "没有打开一个模型" 
    ElseIf Not mdl.IsKindOf(PdPDM.cls_Model) Then  
       MsgBox "当前模型不是一个PDM" 
    Else  
    '调用处理程序  
       ProcessFolder mdl  
    End If    
    '调用的处理程序  
    Private sub ProcessFolder(folder)  
       Dim Tab '要处理的表  
       for each Tab in folder.Tables  
        ' if not Tab.isShortcut then  
            ' Tab.code = tab.name  
            '表名处理,前边添加前缀,字母小写  
            Tab.name=  UCase(Tab.name)  
            Tab.code= UCase(Tab.code)  
             Dim col ' 要处理的列  
             for each col in Tab.columns  
                '列名称和code全部小写,大写诗UCase  
                col.code= UCase(col.code)  
                col.name= UCase(col.name)  
             next  
          'end if 
       next    
    ' 处理视图  
    '  Dim view 'running view  
    '   for each view in folder.Views  
       '   if not view.isShortcut then  
           '  view.code = view.name  
        '  end if 
      ' next     
       ' 递归进入 sub-packages  
       Dim f ' sub  folder  
       For Each f In folder.Packages  
          if not f.IsShortcut then  
             ProcessFolder f  
          end if 
       Next  
    end sub 

    使用方法:进入PowerDesigner,打开一个PDM,在菜单栏找到:Tools – Excute Commands – Edit/Run Script,或者直接按Ctrl+Shift+X调出脚本执行窗口,输入下边的代码就可以了。

  • 相关阅读:
    利用CSS计数函数counter()实现计数
    弹跳加载动画特效Bouncing loader
    HTML页面中解决内容元素随窗口变化布局变乱问题
    CSS中列表项list样式
    框模型中设置内容区域元素占地尺寸box-sizing属性
    PHP100视频教程-->视频下载
    HTML页面中5种超酷的伪类选择器:hover效果
    HTML中获取input中单选按钮radio数据(性别例子)
    HTML中 DOM操作的Document 对象详解(收藏)
    14、输入一个链表,从尾到头打印链表每个节点的值。
  • 原文地址:https://www.cnblogs.com/dirgo/p/9354734.html
Copyright © 2011-2022 走看看