PowerDesigner 把Comment复制到name中和把name复制到Comment

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

在PowerDesigner中使用方法为:

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

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

  1. ‘代码一:将Name中的字符COPY至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                     tab.comment   =   tab.name                     Dim   col   ‘   running   column                     for   each   col   in   tab.columns                           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 

另外在使用REVERSE ENGINEER从数据库反向生成PDM的时候,PDM中的表的NAME和CODE事实上都是CODE,为了把NAME替换为数据库中Table或Column的中文Comment,可以使用以下脚本
2.‘代码二:将Comment中的字符COPY至Name中   

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  

Private   sub   ProcessFolder(folder)   On Error Resume Next        Dim   Tab   ‘running     table         for   each   Tab   in   folder.tables               if   not   tab.isShortcut   then                     tab.name   =   tab.comment                    Dim   col   ‘   running   column                     for   each   col   in   tab.columns                     if col.comment="" then                    else                          col.name=   col.comment                     end if                    next               end   if         next  

      Dim   view   ‘running   view         for   each   view   in   folder.Views               if   not   view.isShortcut   then                     view.name   =   view.comment               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  
时间: 2024-11-10 14:08:33

PowerDesigner 把Comment复制到name中和把name复制到Comment的相关文章

转-PowerDesigner 把Comment复制到name中和把name复制到Comment

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

PowerDesigner中在生成的数据库脚本中用name列替换comment列作为字段描述的方法

1 PowerDesigner中在生成的数据库脚本中用name列替换comment列作为字段描述的方法如下, 依次打开Tools -- Execute Commands -- Run Script,运行以下脚本: Option Explicit ValidationMode = True InteractiveMode = im_Batch Dim mdl 'the current model 'get the current active model Set mdl = ActiveModel

PowerDesigner通过SQL语句生成PDM文件并将name和comment进行互相转换

本篇文章主要介绍了PowerDesigner通过SQL语句生成PDM文件并将name和comment进行互相转换 超详细过程(图文),具有一定的参考价值,感兴趣的小伙伴们可以参考一下 1.软件准备 软件:Navicat 11.1,Powerdesigner 15 2.安装步骤 第一步:将要生成的数据库导出为sql文件 第二步:打开PowerDesigner选择File-->Reverse Engineer --> Database... 第三步:选择MySQL5.0数据库 第四步:找到第一步生

MariaDB数据库主从复制、双主复制、半同步复制、基于SSL的安全复制实现及其功能特性介绍

一.复制概述 MariaDB/MySQL内建的复制功能是构建大型,高性能应用程序的基础.将MySQL的数据分布到多个系统上去,这种分布的机制,是通过将MySQL的某一台主机的数据复制到其它主机(slaves)上,并重新执行一遍来实现的.复制过程中一个服务器充当主服务器,而一个或多个其它服务器充当从服务器.主服务器将更新写入二进制日志文件,并维护文件的一个索引以跟踪日志循环.这些日志可以记录发送到从服务器的更新.当一个从服务器连接主服务器时,它通知主服务器从服务器在日志中读取的最后一次成功更新的位

实现多线程的同时复制(三个线程同时复制)

1 package com.threadcopyfile; 2 3 /** 4 * @author lisj 5 * 实现多线程的同时复制 6 * 调用多个线程同时复制各自的模块 7 */ 8 public class threadCopy { 9 10 11 public static void main (String args[]){ 12 13 ThreadCopyFile a=new ThreadCopyFile(1); //实例化多个线程 14 ThreadCopyFile b=ne

TimesTen 数据库复制学习:10. 定义classic复制

设计高可用系统 复制的目标为: 1. 提供一个或多个复制数据库,保证数据可以为应用所用 2. 提供复制数据库用于恢复 3. 负载均衡 4. 无中断的软件升级和维护 classic replication scheme支持以下形式: Unidirectional - 这个和ASP有和区别,会切换角色吗 Bidirectional split workload - 双向,属于互备型,两个数据库负责不同的工作负载 Bidirectional distributed workload - 双向,属于双活

【复制】【编码】MySQL复制中的编码问题

编码背景知识 Latin-1,全称ISO 8859-1 Latin 1 对ASCII的拉丁语扩展 向下兼容ASCII,其编码范围是0x00-0xFF,0x00-0x7F之间完全和ASCII一致,0x80-0x9F之间是控制字符,0xA0-0xFF之间是文字符号. ASCII   没啥好说的 0x00 – 0x7f 地球人都会查表 GBK:查表 http://ff.163.com/newflyff/gbk-list/ UTF8编码:Unicode表的一种落地实现 (包括传输<大小端>,字节存储,

Mysql5.7多源复制,过滤复制一段时间后增加复制一个库的实现方法

多源复制如果是整个实例级别的复制,那不存在下面描述的情况. 如果是对其中一个或多个主实例都是过滤复制,并且运行一段时间后,想在这个源上再增加一个库怎么实现? 主1:192.168.1.10 3306     db1     db2 主2:192.168.1.20 3306     db3 从:  192.168.1.30 3306 假如之前实现的是过滤复制,复制的是主1的db1 和 主2的db3,已经运行一段时间了.现在想增加主1上的db2,该如何实现? 具体实现方法如下: 1. 使用mysql

mysql复制原理/基于库的多线程复制原理/基于BLGC的多线程复制原理

单线程主从复制: 从库向主库请求binlog,并将binlog转存到自己的relaylog中,从库重做binlog里面的sql, 主要由以下三个线程完成. dump thread: 在主库上,发送binlog io thread: 在slave上,接收,转存,请求binlog sql thread :在slave 上,重做binlog 基于库的多线程复制原理: 从库向主库请求binlog,并将binlog转存到自己的relaylog中,从库重做binlog里面的sql, 主要由以下三个线程完成.