在使用PowerDesigner对数据库进行概念模型和物理模型设计时,一般在NAME或Comment中写中文,在Code中写英文。Name用来显 示,Code在代码中使用,但Comment中的文字会保存到数据库Table或Column的Comment中,当Name已经存在的时候,再写一次 Comment很麻烦,可以使用以下代码来解决这个问题:

  • 代码一:将Name中的字符COPY至Comment中

    1. Option   Explicit
    2. ValidationMode   =   True
    3. InteractiveMode   =   im_Batch
    4. Dim   mdl   '   the   current   model
    5. '   get   the   current   active   model
    6. Set   mdl   =   ActiveModel
    7. If   (mdl   Is   Nothing)   Then
    8. MsgBox   "There   is   no   current   Model "
    9. ElseIf   Not   mdl.IsKindOf(PdPDM.cls_Model)   Then
    10. MsgBox   "The   current   model   is   not   an   Physical   Data   model. "
    11. Else
    12. ProcessFolder   mdl
    13. End   If
    14. '   This   routine   copy   name   into   comment   for   each   table,   each   column   and   each   view
    15. '   of   the   current   folder
    16. Private   sub   ProcessFolder(folder)
    17. Dim   Tab   'running     table
    18. for   each   Tab   in   folder.tables
    19. if   not   tab.isShortcut   then
    20. tab.comment   =   tab.name
    21. Dim   col   '   running   column
    22. for   each   col   in   tab.columns
    23. col.comment=   col.name
    24. next
    25. end   if
    26. next
    27. Dim   view   'running   view
    28. for   each   view   in   folder.Views
    29. if   not   view.isShortcut   then
    30. view.comment   =   view.name
    31. end   if
    32. next
    33. '   go   into   the   sub-packages
    34. Dim   f   '   running   folder
    35. For   Each   f   In   folder.Packages
    36. if   not   f.IsShortcut   then
    37. ProcessFolder   f
    38. end   if
    39. Next
    40. end   sub

另外在使用REVERSE ENGINEER从数据库反向生成PDM的时候,PDM中的表的NAME和CODE事实上都是CODE,为了把NAME替换为数据库中Table或Column的中文Comment,可以使用以下脚本:

  • 代码二:将Comment中的字符COPY至Name中

    1. Option   Explicit
    2. ValidationMode   =   True
    3. InteractiveMode   =   im_Batch
    4. Dim   mdl   '   the   current   model
    5. '   get   the   current   active   model
    6. Set   mdl   =   ActiveModel
    7. If   (mdl   Is   Nothing)   Then
    8. MsgBox   "There   is   no   current   Model "
    9. ElseIf   Not   mdl.IsKindOf(PdPDM.cls_Model)   Then
    10. MsgBox   "The   current   model   is   not   an   Physical   Data   model. "
    11. Else
    12. ProcessFolder   mdl
    13. End   If
    14. Private   sub   ProcessFolder(folder)
    15. On Error Resume Next
    16. Dim   Tab   'running     table
    17. for   each   Tab   in   folder.tables
    18. if   not   tab.isShortcut   then
    19. tab.name   =   tab.comment
    20. Dim   col   '   running   column
    21. for   each   col   in   tab.columns
    22. if col.comment="" then
    23. else
    24. col.name=   col.comment
    25. end if
    26. next
    27. end   if
    28. next
    29. Dim   view   'running   view
    30. for   each   view   in   folder.Views
    31. if   not   view.isShortcut   then
    32. view.name   =   view.comment
    33. end   if
    34. next
    35. '   go   into   the   sub-packages
    36. Dim   f   '   running   folder
    37. For   Each   f   In   folder.Packages
    38. if   not   f.IsShortcut   then
    39. ProcessFolder   f
    40. end   if
    41. Next
    42. end   sub

以上两段代码都是VB脚本,在PowerDesigner中使用方法为:

PowerDesigner->Tools->Execute Commands->Edit/Run Scripts

将代码Copy进去执行就可以了,是对整个CDM或PDM进行操作

PowerDesigner 逆向中 Name和Comment互换的更多相关文章

  1. PowerDesigner逆向操作(从mysql5.0生成数据库的物理模型),把Comment写到name中,pdm文件导出为word

    PowerDesigner逆向操作(从mysql5.0生成数据库的物理模型) 环境:powderdesigner12.5:mysql5.0步骤:1. 为指定的数据库配置mysql的ODBC数据源先下载 ...

  2. PowerDesigner 的mysql PDM 的COMMENT注释

    PowerDesigner 的mysql PDM 的COMMENT注释 2012-11-01 15:38 4447人阅读 评论(0) 举报 分类: 数据库相关(7) PowerDesigner 的my ...

  3. android apk 逆向中常用工具一览

    关于apk 逆向中的一些工具的使用,看了不少文章,也使用过有很长一段时间了,今天对此做一总结: 几种文件之间的转换命令: 1. odex -> smali java -jar  baksmali ...

  4. C#中文件和byte[]互换问题

    如何将图片和声音转化成byte[],并通过webservice进行传输?    如何将webservice传输过来的byte[],转化成我们想要的文件?    (一)文件转化为byte[]    方法 ...

  5. 逆向中静态分析工具——IDA初学者笔记之字符串分析

    逆向中静态分析工具——IDA初学者笔记之字符串分析 程序中往往包含很多字符串资源,这些资源存在于PE文件的rdata段,使用IDA反编译后,可以查找到这些字符串, 逆向破解程序通常需要一个突破点,而这 ...

  6. 逆向中静态分析工具——IDA初学者笔记

    逆向中静态分析工具——IDA初学者笔记 //****************************************************************************** ...

  7. 安卓日常开发和逆向中常用的shell命令与非shell命令

    简述shell 命令与 非shell命令区别 shell命令不用先adb shell进入界面执行 非shell命令必须要 adb shell进入界面执行 基础非shell命令 1.安装app adb ...

  8. RPC 技术及其框架 Sekiro 在爬虫逆向中的应用,加密数据一把梭!

    什么是 RPC RPC,英文 RangPaCong,中文让爬虫,旨在为爬虫开路,秒杀一切,让爬虫畅通无阻! 开个玩笑,实际上 RPC 为远程过程调用,全称 Remote Procedure Call, ...

  9. PowerDesigner中NAME和COMMENT的互相转换,需要执行语句

    原文: http://www.cnblogs.com/xnxylf/p/3288718.html 由于PDM 的表中 Name 会默认=Code 所以很不方便, 所以需要将 StereoType 显示 ...

随机推荐

  1. git tool

    1. install apt-get install git 2. 使用 ssh-keygen -C "email" -t rsa  生成一个ssh pub key,将生成的id_ ...

  2. xmind8

    win10企业版安装 xmind.zip,打开应用程序报下面的错 解决办法是 先备份xmind8下的XMind.ini文件 Open up Xmind.ini and replace "Ap ...

  3. Disque

    Disque是一个内存储存的分布式任务队列实现, 它由 Redis 的作者 Salvatore Sanfilippo (@antirez)开发, 目前正处于预览版(alpha)阶段. 本文档将对 Di ...

  4. MYCAT 配置(转)

     server.xml配置 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mycat:se ...

  5. DSP中.gel文件的作用

    GEL是CCS提供的一种解释语言,使用该语言写出的GEL,函数具有两在功能,一是配置CCS工作环境,二是直接访问目标处理器DSP(包括DSP软/硬仿真器).用户可以使用GEL函数完成类似于宏操作的自动 ...

  6. XE8 (RTM) Android SDK 更新安装(转)

    原地址:http://www.cnblogs.com/onechen/p/4379924.html 适用:XE8 Android 平台 问题:安装 XE8 RTM 时,如果勾选了 Android SD ...

  7. winform中设置窗体的默认焦点

    winform的窗体中,有时候需要设置默认焦点,有时候需要取消默认焦点. 设置默认焦点,最简单的方法就是设置这个控件的tabIndex,例:textBox1.TabIndex = 0; 也可以在窗体事 ...

  8. 为了体验 ILS 在Win2012R2 Hyper-V上安装Windows 2000 AdvSer

    Win2012 R2 Hyper-V 的集成服务包已不支持Windows 2000 先安装SP4.IE6.更新汇总包,再来安装这个. 安装完成后,会有几个未知设备,直接禁用就可以了. 开启Window ...

  9. JSTL 核心标签库 使用

    JSTL 核心标签库标签共有13个,功能上分为4类: 1.表达式控制标签:out.set.remove.catch 2.流程控制标签:if.choose.when.otherwise 3.循环标签:f ...

  10. GDB 调试遇到??的问题

    今天总算解决了一个大的bug,爽! 我的程序crash,有了coredump文件,在Linux PC上用arm-linux-gdb debug it. The result is: #0  0x402 ...