• 使用powerdesigner导入sql脚本,生成物理模型


    有些时候我们的powerdesigner以jdbc的形式链接本地数据库可能会失败,这时候我觉得从sql文件中生成物理模型是个很不错的方法

    1.打开powerdesigner,文件->->reverse engineer->->database

    2.选择对应的数据库,我这里以oracle11g为例,选择share the DBMS defintion点击确定进入下边的页面

    3.点击如上箭头指示的按钮添加要生成屋里模型的sql文件(就是建表语句,可直接从oracle中导出),确定

    4.但是生成的物理模型name是字段名,不是我们想要的comment名,接下来进行如下操作 工具->execute commands->edit/Run script

    5.粘贴如下的命令并执行

        Option   Explicit   
        ValidationMode   =   True   
        InteractiveMode   =   im_Batch
        Dim blankStr
        blankStr   =   Space(1)
        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 = "" or replace(col.comment," ", "")="" Then
                                col.name = blankStr
                                blankStr = blankStr & Space(1)
                          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  

    6.搞定后效果如下

  • 相关阅读:
    如何在typescript中引入jquery
    Project 'com.cooldatasoft:spring-boot-starter-parent:2.3.10.RELEASE' not found
    FTP服务器需要开几个端口
    c# 创建 windows 托盘图标及上下文菜单
    postgresql 查询表注释 和 字段注释
    idea 使用技巧识记
    c# 基元数据类型占用字节数
    proxifier 配合 fiddler 网络监控 使用方法备忘
    c# 反射备忘
    Delphi IdFTP[3] TIdFTP.Connect、IdFTP.ReadTimeout
  • 原文地址:https://www.cnblogs.com/pypua/p/9963310.html
Copyright © 2020-2023  润新知