精华内容
下载资源
问答
  • powerdesigner逆向生成ER图
    千次阅读
    2012-10-24 10:33:18

    选择新建一个模型


    选择database reverse engineering

    输入数据库导出的脚本*.sql

    然后确定即可,生成的图如下所示:


    更多相关内容
  • 利用powerdesigner反向数据库结构,生成ER图
  • 1. 根据SQL文件生成ER图 首先准备好SQL文件 然后在PowerDesigner 里 点击 File -> ReverseEngineer -> Database 显示如下 其中 :ModelName自己随意写,DBMS选择你使用的数据库类型 点击确定,显示如下...

    1. 根据SQL文件生成ER图

    首先准备好SQL文件

    然后在PowerDesigner 里 点击 File -> ReverseEngineer -> Database 显示如下

    其中 :ModelName自己随意写,DBMS选择你使用的数据库类型

    点击确定,显示如下页面

    选择你的SQL文件

    其次改编码类型

    然后点击确定即可

     

    2. 生成注释

    如图:点击Tools -> ExecuteCommands -> Edit/Run Script ...

     
    '******************************************************************************
    '* File:     comment2code.vbs
    '* Purpose: 在PowerDesigner的PDM图形窗口中显示数据列的中文注释
    '* Title:    将字段的comment赋值到字段的code中
    '* Category: 打开物理模型,运行本脚本(Ctrl+Shift+X)
    '* Copyright:foxzz@163.com,2006/07/25 .
    '* Author:   foxzz
    '* Created:
    '* Modified:
    '* Version: 1.0
    '* Comment: 遍历物理模型中的所有表,将字段的comment赋值到字段的code中。
    '            在将code置换为comment过程中,需要考虑的问题
    '            1、code必须唯一,而comment有可能不唯一。
    '               处理办法是如果字段的comment重复,则字段的code=comment+1、2、3...
    '            2、comment值有可能为空,这种情况下对字段的code不处理。
    '               针对Oracle数据库,将comment on column 字段名称 is '';添加到C:\pdcomment.txt文件中。
    '               在补充comment完毕后,便于在数据库中执行      
    '******************************************************************************
     
     
    Option Explicit
    ValidationMode = True
    InteractiveMode = im_Batch
     
     
    Dim system, file
    Set system = CreateObject("Scripting.FileSystemObject")
    Dim ForReading, ForWriting, ForAppending   '打开文件选项
    ForReading   = 1 ' 只读
    ForWriting   = 2 ' 可写
    ForAppending = 8 ' 可写并追加
    '打开文本文件
    Set file = system.OpenTextFile("C:\pdcomment.txt", ForWriting, true)
     
     
     
     
    '判断当前model是否物理数据模型
    Dim mdl
    Set mdl = ActiveModel
    If (mdl Is Nothing) Then
       MsgBox "处理对象无模型"
    ElseIf Not mdl.IsKindOf(PdPDM.cls_Model) Then
       MsgBox "当前模型不是物理数据模型"
    Else
       ProcessFolder mdl,file
    End If
    file.Close
     
     
     
     
    '******************************************************************************
    Private sub ProcessFolder(folder,file)
     
     
    Dim i,j,k
    i=0:j=0:k=0
     
     
    '列数组,记录字段里不重复的comment
    Dim ColumnComment()
    Dim ColumnCommentNumber()
    ReDim Preserve ColumnComment(i)
    ReDim Preserve ColumnCommentNumber(i)
     
     
    Dim tbl   '当前表
    Dim col   '当前字段
    dim curComment '当前字段comment
     
     
    '处理模型中的表
    for each tbl in folder.tables
        if not tbl.isShortcut then
           if len(trim(tbl.comment))<>0 then
              '可以在这里显示table的comment
              'tbl.code = tbl.code+"("+trim(tbl.comment)+")"
           end if 
     
     
           '处理表中的列
           for each col in tbl.columns
               k = 0
               curComment = trim(col.comment)
               if len(curComment)<>0 then
                  '遍历相异的comment数组
                  for j = 0 to i
                      if ColumnComment(j) = curComment then
                         '如果找到相同的comment,则相关计数器加1
                         ColumnCommentNumber(j) = ColumnCommentNumber(j) + 1
                         k = j
                      end if
                  Next
                  '如果没有相同的comment,则k=0,此时ColumnCommentNumber(0)也为0
                  '否则ColumnCommentNumber(k)不为0
                  if ColumnCommentNumber(k) <> 0 then
                     col.name = curComment & cstr(ColumnCommentNumber(k))
                  else
                     col.name = curComment
                     'ColumnComment(0)、ColumnCommentNumber(0)永远为空
                     '将相异的comment记录添加到数组中
                     i = i + 1
                     ReDim Preserve ColumnComment(i)
                     ReDim Preserve ColumnCommentNumber(i)
                     ColumnComment(i) = curComment
                     ColumnCommentNumber(i) = 0
                  end if
               else
                  '写入文件中
                  file.WriteLine "comment on column "+ tbl.code+"."+col.name+" is '';"         
               end if
           next
        end if
        '由于不同表的code允许相同,因此此时重新初始化。
        '因为ColumnComment(0)、ColumnCommentNumber(0)为空,可以保留
        ReDim Preserve ColumnComment(0)
        ReDim Preserve ColumnCommentNumber(0)
        i=0:j=0:k=0
     
     
    next
     
     
    Dim view '当前视图
    for each view in folder.Views
        if not view.isShortcut then
           '可以在这里显示view的comment
           'view.code = view.comment
        end if
    next
     
     
    '对子目录进行递归
    Dim subpackage 'folder
    For Each subpackage In folder.Packages
        if not subpackage.IsShortcut then
           ProcessFolder subpackage , file
        end if
    Next
     
     
    end sub
     
    '******************************************************************************zzzz

    将以下代码粘贴进来然后点击run

     

    3. 显示字段名

    虽然注释显示出来了,但原字段不见了

    如图点击

    然后就可以了

     

    补充:如果生成的图如下,字段在最后选项调整位置的话

    到上一步显示Code的地方,如图圈中的工具挪动位置就可以了

     

    展开全文
  • 若提示:NonSQL Error : Could not load class oracle.jdbc.OracleDriver的话,则事因为powerDesigner找不到jdbc的驱动包,此时可以在系统环境变量ClassPath中加入一段: ;E:\app\admin\product\11.2.0\dbhome_1\...

    踩了很多坑,今天的总结一下。

    1.先选择配置数据源

    2.这步,DBMS选择对应的数据库,这里博主用的是ORACLE数据库,然后点击确定

     

     3.选择Using  a datasource,如果之前没有设置,点击鼠标位置进入设置

    4.选择Data source下面的Connection profile,在点击Configure,进行新增

    5.点击新增

    6.根据内容进行填写:

    Connection profile name:输入数据库连接文件名,它会自动加上后缀名.dcp

    Directory:数据库连接文件存放路径;可以任意;

    Connetctiontype:选择JDBC;

    DBMS type:数据库类型选择Oracle;

    Servername:服务器名称;也相当于对应PL/SQL登陆页面的数据库;(NetManager管理器可以看到服务器)Databasename:数据库名字;Username:登陆数据库名字;Password:密码JDBCDriverclass:驱动类;只要下拉框选择就行;JDBCDriverJarURL:访问的服务器路径JDBCconnectionfiles:驱动包;需要指向ojdbc6.jar或者其他驱动的包的按钮路径;全部设置如下:

     

     7.配置好之后点击Test Connection进行连接测试:若连接成功则会有弹出框提示,如果连接失败,则在powerDesigner左下角查看失败信息:

    如果提示信息为:Couldnot Initialize JavaVM的话,就要检查一下JDK。如果是x64的换成X86版本就行了。

    若提示:NonSQL Error : Could not load class oracle.jdbc.OracleDriver的话,则事因为powerDesigner找不到jdbc的驱动包,此时可以在系统环境变量ClassPath中加入一段:

    ;E:\app\admin\product\11.2.0\dbhome_1\jdbc\lib\ojdbc6.jar。

    这一段即为上个图片,JDBCconnectionfiles:驱动包;指向的地址

    PD需要关闭重新打开才能生效。
     

    展开全文
  • 这篇文章是根据其他两个帖子学习以及遇到的坑总结的。我主要是为自己记录一下,防止日后忘记 或找不到原帖。 ...然后这篇文章解决了生成ER图没有注释列的问题 https://blog.csdn.net/yangsh...

    这篇文章是根据其他两个帖子学习以及遇到的坑总结的。我主要是为自己记录一下,防止日后忘记 或找不到原帖。

     

    这篇文章是介绍如何连接Oracle 生成 ER 图

    https://blog.csdn.net/weixin_41477980/article/details/80298594

    然后这篇文章解决了生成的ER图没有注释列的问题

    https://blog.csdn.net/yangshengli/article/details/9038243

    =========================================================================

    我的环境与上面帖子中的稍有不同,但是也都大同小异。我主要记录一下遇到i的坑。

    1. JDK 需要安装32位的,不然PowerDesigner会报错。并且需要配置电脑的环境变量 (系统变量),如果已安装了64位的JDK也可以再安装32位的然后把原来64的环境变量配置改为32的路径(我是这么做的,但是我没试过两个都配置)。

    2. 电脑需要至少安装了Oracle的客户端 (Oracle Client)。

    3.需要下载 ojdbc14.jar 并放到Oracle目录 例如   "C:\app\【你电脑的用户名比如administrator】\product\11.2.0\client_1\jdbc\lib\ojdbc14.jar"。

    4.设置环境变量 变量名 CLASSPATH 值为ojdbc14.jar的所在目录(就比如上面的那个)。

    =========================================================================

    下面直接进入生成ER图的步骤 (原帖地址:https://blog.csdn.net/weixin_41477980/article/details/80298594)

    1.打开PowerDesigner 选择 File->Reverse Engineer ->Database,名字自己取一个 DBMS 选择 ORACLE Version 11g。

    2.如下图所示进入设置连接。

    3.进入Configure。

    4.添加数据源。

    5.填写设置,需要注意的是下面红色框内的选项。

    特别需要注意的是 JDBC connection URL 需要改成自己的。 比如 jdbc:oracle:thin:@127.0.0.1:1521:xe

    6.点击TestConnection 测试是否能够连接。

    7.选择刚才设置好的数据源,点击确定。

    8.选择数据源后,填写账户和密码。然后点击 Connect。

    9.点击确定。

    10.然后会出现所有的表,点击确定后生成 ER图。

    =========================================================================

    生成ER图之后会发现没有注释(Comment)

    解决方案如下:(原帖地址:https://blog.csdn.net/yangshengli/article/details/9038243)

    1.在PowerDesigner的 tools --> resources --> dbms --> 双击oracle version 10g 打开DBMS属性窗口,在general选项卡中选择script-->objects-->column-->SQLlistquery修改其中的内容为: 

    {OWNER, TABLE, COLUMN, DTTPCODE, LENGTH, SIZE, PREC, NOTNULL EX, DEFAULT, COMMENT, COLNNAME, ExtNotNullConstraintName EX, ExtNotNullDeferOption EX}
     
    select
       c.owner,
       c.table_name,
       c.column_name,
       decode(c.data_type_owner, NULL, replace(c.data_type, 'TIMESTAMP(6)', 'TIMESTAMP'), c.data_type_owner||'.'||c.data_type),
       decode(c.data_type_owner, NULL, decode(c.character_set_name, NULL, to_char(decode(c.data_type, 'RAW', c.data_length, c.data_precision)), to_char(c.char_col_decl_length) || decode(c.char_used, 'C', ' char', '')), NULL),
       c.data_precision,
       decode(c.data_precision, NULL, NULL, c.data_scale),
       decode(c.nullable, 'N', 'NOT NULL', [%ISDBAUSER%?'%SqlGetNotNullConstName.'||c.owner||c.table_name||c.column_name||'nullable%':'']),
       c.data_default,
       m.comments,   
       m.comments,  
       [%ISDBAUSER%?'%SqlGetNotNullConstName.'||c.owner||c.table_name||c.column_name||'%':''],
       [%ISDBAUSER%?'%SqlGetNotNullConstName.'||c.owner||c.table_name||c.column_name||'state%':'']
    from
       sys.all_tab_columns c,
       sys.all_col_comments m
    where
       c.table_name = %.q:TABLE%
       and c.table_name = m.table_name
       and c.column_name = m.column_name
       and c.owner = m.owner
    [  and c.owner=%.q:SCHEMA%]
    order by
       c.owner, c.table_name, c.column_id
    

     

    2.设置显示的列 Tools -> Display Preferences

    3. 选择 Table ,并在右侧勾选Comment 。然后点击 Advanced。

    4.点击下图中的放大镜

    5.下图是我的配置。

     

    都设置好后保存(我选择的全部应用设置)。其实设置显示备注这个操作应该先设置,然后再生成ER图。如果你发现设置之后备注没有出现,那么请更新模型或重新生成ER图。

    展开全文
  • powerdesigner逆向导出的ER图为什么只有图表没有连接线
  • 本文为大家分享了PowerDesigner15.1连接oracle11g逆向生成ER图,供大家参考,具体内容如下 1. 创建dmp 选择菜单File->New Model,【Model type】选择Physical Data Model,【Model name】 自由定名,【DBMS】选择...
  • (1)PowerDesigner16.5官方下载 【侵删】 https://www.onlinedown.net/soft/577763.htm (2)PowerDesigner连接MySQL数据库 【PowerDesigner本身是32位的程序(此处标记,特别重要),故不管在32位或者64位...
  • PowerDesigner反向生成ER图
  • 1.打开PowerDesigner15,点击File>>>Reverse Engineer>>>Database… 2.在弹出窗口中选择Oracle Database10g… 3.接下来选择“using a data source”,点击右下角的数据库图标 4.弹出窗中选择...
  • PowerDesigner 反向工程,生成ER图

    万次阅读 2017-09-16 16:54:55
    仔细研究了一个晚上,决定放弃使用PL/SQL Developer生成Oracle的ER图,捣弄了好久都没找到方法。  1.利用PL/SQL Developer的tools工具下:Exports user objects可以导出数据库表结构的sql脚本文件(默认情
  • 生成ER图之后,一般是这样的,很简单的表名、字段值、字符类型,但是事实上这样很蠢,没有注释的话完全没有办法给别人看嘛!要是给领导看,怕是要被当场打死。  所以要加注释,加注释需要一个脚本,脚本我...
  • 发现bug,sql导入的er图,没有表名注释。。。 5. 于是猜测,我再导入一次 alter table comment脚本应该就可以了。测试ok了!! 6.把上面alter脚本全部保存成一个sql文件,再次导入,ok了。 1.推荐先从mysql导出表...
  • PowerDesigner 反向工程生成ER图步骤

    千次阅读 2016-05-20 20:04:02
    第一步:添加ODBC 控制面板\所有控制面板项\管理工具   双击打开   点击添加   选择后点击“完成”   填写对应信息后添加oracle   点击“完成”后,填写对应信息 ...第二步:配置PowerDesigner
  • PowerDesigner15反向工程生成ER图

    万次阅读 2017-01-20 11:07:48
    1.环境说明;  软件环境:PowerDesigner15_Evaluation  Oracle 11G  jdk 1.7-32bit  2.操作步骤: 2.1打开powerDesigner,菜单:File->ReverseEngineer->Databas
  • 使用PowerDesigner默认配置逆向工程是没有注释(name列为英文,comment列是空的),这样的不方便查看字段具体是什么意义,将注释一同导出,方便查看字段具体的意义,如下 注释列导出步骤 1、新建脚本DBMS...
  • 转自:... 01.添加数据服务端 02.PowerDesigner 1、 新建PDM: 选择菜单File->New Model,【Model type】选择Physical Data Model,【DBMS】选择“ORACLE Version 10g”。 2、选
  • 1.准备软件  Powerdesigner  PostgreSQL  PostgreSQL ODBC驱动程序: psqlODBC,网址:PostgreSQL: File Browser 2. 安装PostgreSQL的...4.启动PowerDesigner(管理员身份),准备逆向生成。  (1)新建数据模
  • 想起来Sybase 的Power designer, 反向工程生成ER图, 这样看的就清楚了.记录一下:1. In PowerDesigner, choose File | Reverse Engineer | Database....The New Physical Data Model Dialog box, shown next, appears...
  • 还有给我不要觉得我写的多,其实就一点东西,主要是截的多,尴尬,希望尽可能详细点,结果就变成傻瓜式的了。  首先,我要说的连接方式有两种,ODBC和JDBC,我查到的资料也大都是这两种,如果有其他希望能告知。...
  • 利用Powerdesigner逆向生成ER图 Powerdesinger作为一款数据库设计工具其功能非常强大,最近由于项目验收需要数据库模型图,仅使用它做了逆向生成的操作,现将过程记录如下。 1.安装PowerDesigner工具及所需JDK包 ...
  • 使用PowerDeSigner逆向生成Mysql数据库PDM(带中文注释) 使用PowerDeSigner逆向生成Mysql数据库PDM(带中文注释) 工具选型 第一步、生成PDM 第二步、 生成中文注释 第三步、中英相聚 工具选型 ...
  • 第一步 先把环境变量的JDK设置为1.6的版本,因为powerDesigner 对数据库的驱动支持问题,稍后可以自己再改回来。改完JDK之后记得重启powerDesigner。 第二步新增一个模型。DBMS选择PostgreSQL,如下: 第三步...
  • 1. 根据SQL文件生成ER图 首先准备好SQL文件 然后在PowerDesigner 里 点击 File -> ReverseEngineer -> Database 显示如下 其中 :ModelName自己随意写,DBMS选择你使用的数据库类型 点击确定,显示如下页面 ...
  • 1.安装powerdesigner2 配置逆向工程2.1 新建模型pdm新建模型.png注:DBMS选择MYSQL5.0配置链接.png新建数据库链接-01.png配置链接.pngcom.mysql.jdbc.Driverjdbc:mysql://192.168.0.151:3306/nbspider测试连接.png...
  • 从数据库反向生成er图

    千次阅读 2021-04-07 23:40:50
    可能由于是下载的powerdesigner的版本问题,dbms这里最新的还是mysql5.0, 但是从网上查找的软件版本基本上都是16.5的中文版,没有办法只能硬着头皮使用了 连接数据库 从数据库中更新模型 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 531
精华内容 212
关键字:

powerdesigner逆向生成er图