`
caiyunlong
  • 浏览: 187828 次
  • 性别: Icon_minigender_1
  • 来自: 海口
社区版块
存档分类
最新评论

PowerDesigner表结构和字段大小写转换

 
阅读更多
平时经常用PowerDesigner设计表结构。但是有时候在设计表结构和字段的时候经常是大小写混合用。导致一张表中有的字段是大写有的是小写。PowerDesigner在设计表示如果表明或字段名是小写。则在生成SQL时会自动在表名上使用双引号。例如:
/*==============================================================*/
/* Table: "test"                                                */
/*==============================================================*/
create table "test"  (
   "username"           varchar2(24),
   "full_name"          varchar2(24)
);
ORACLE会认为该表和字段使用小写字母命名。ORACLE默认是使用大写字母的,这样会导致有些用法用不了。下面提供段代码可以把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调出脚本执行窗口,输入下边的代码就可以了。
我在帮别人设计博客系统tbw淘宝商城http://www.tbwchs.com时就遇到这个问题。
分享到:
评论

相关推荐

    PowerDesigner数据库模型表内容大小写转换

    PowerDesigner数据库模型表内容大小写转换,可对表名称、字段名称、字段类型标识字符、主外键依赖等字符串进行大小写转换操作

    如何:让Oracle表及字段显示为区分大小写

    - 在PowerDesigner中设计表结构时,可以确保表名和字段名按照期望的大小写格式设置。 - 当使用PowerDesigner生成SQL脚本时,它会在表名和字段名周围添加双引号,这样在Oracle中创建表时就会保留这些名称的原始大小...

    如何将数据库中的表导入到PowerDesigner中

    5. **导入过程**:点击“Next”按钮,PowerDesigner将开始读取数据库中的表结构信息,包括字段名、数据类型、主键、外键等,并将其转换为数据模型图。这个过程可能需要一些时间,具体取决于数据库的大小。 6. **...

    PowerDesigner使用部分详解

    - **编写脚本**:在弹出的窗口中,输入相应的脚本来实现字段名的大小写转换。以下是一个示例脚本: ```vbscript Option Explicit ValidationMode = True InteractiveMode = im_Batch Dim mdl ' 当前模型 Set...

    PowerDesigner的使用步骤

    若遇到因双引号导致的问题,可进入“Database” -> “Edit Current Database”,选择“Sql” -> “Format”,更改“CaseSensitivityUsingQuote”选项为"No",以避免标识符大小写敏感问题。 4. **生成SQL文件** ...

    Powerdesigner数据库设计指南[整理].pdf

    设计概念模型时,通过"Tools/Model Options"和"Tools/Display Preferences"可以设置模型选项和图元的显示方式,如Name/Code是否区分大小写,实体间关系的表示方式等。 创建概念模型的步骤包括:新建模型,设置模型...

    Powerdesigner使用建议(完整版) 用实体关系图进行数据库建模

    通过“Tools”菜单下的“Model Options”,可以进入“Naming Convention”设置页面,选择“Name Code”标签页,用户能够指定字符大小写规则,如全部大写(Uppercase)、全部小写(Lowercase)或混合大小写(Mixed Case)。...

    EZDML 表结构设计器使用手册

    - EZDML提供了大小写转换功能,以满足不同数据库系统对标识符命名规则的要求。 综上所述,EZDML表结构设计器虽然功能相对简单,但在特定场景下能够提供高效、便捷的数据建模体验。对于需要快速原型设计或小型项目...

    powerdesigner设计数据库的注意事项

    - **数据类型选择**:根据实际需求选择合适的数据类型,如整型、字符串、日期时间等,避免过大或过小的数据类型导致的空间浪费或数据精度问题。 - **索引设计**:合理创建主键、唯一索引和普通索引,提高查询速度...

    powerDesiger导入数据(Excel转PDM)

    1. **列名规范**:尽管PowerDesigner默认将列名转换为大写,但你可以在Excel中设定好所需的大小写格式,避免后期修改的麻烦。 2. **数据类型**:在Excel的单元格中,可以使用特定的格式或者注释来表示对应的数据类型...

    oracl转mysql注意事项

    - **问题描述**:MySQL默认情况下区分大小写,这可能导致Oracle数据库中的表名或字段名在MySQL中无法识别。 - **解决方案**:在迁移前,调整MySQL的配置使其不区分大小写。 **7. 数值类型处理** - **问题描述**:...

    15Linux下Oracle的使用入门.ppt

    例如,`TO_DATE`用于将字符串转换为日期,`SYSDATE`获取当前系统日期,`SUBSTR`用于提取字符串的一部分,`UPPER`和`LOWER`转换字符大小写。 在Linux环境下,Oracle的安装、配置、管理和优化都需要熟悉Linux命令行...

    Oracle常见的一些面试题.pdf

    2. **数据库设计与导入导出**:设计数据库涉及表结构和第三范式原则。数据库导入导出可以使用Oracle的EXP和IMP工具,或者PowerDesigner等第三方工具。 3. **重复数据处理**:显示重复数据可使用`GROUP BY`和`HAVING...

    数据库设计文档.doc

    逻辑设计部分详细阐述了数据库的实体关系模型,包括各表的逻辑结构和视图的设计。视图是根据需求定制的虚拟表,如视图A、B、C,分别用于数据聚合、过滤或提供特定查询接口。每个视图的列名和功能应有清晰的英文和...

    InfoBase 资料管理库

    其他细节的设计…最爱模块发现小错误更新历史: 2003.7.3 树型分类算法 开始和朋友讨论树型算法,一时兴起,写了个树型结构并做了个示例。2003.7.4 主程序和数据库设计 见自己完成了树型分类和节点的管理代码,感觉...

Global site tag (gtag.js) - Google Analytics