`
joewalker
  • 浏览: 211263 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

PowerDesigner 反向工程,生成ER图

    博客分类:
  • DBMS
阅读更多


原文地址:http://hi.baidu.com/liviolet/blog/item/f60cbd8f227775e8f01f3698.html


在数据建模过程中,我们建立概念数据模型,通过正向工程生成物理数据模型,生成数据库建库脚本,最后将物理数据模型生成关系数据库,现在反过来,通过逆向工程将关系数据库,生成物理数据模型。
优点:

         在丢失数据模型或者数据库模型同现有的数据库不一致,可以通过该方法生成使用中数据库的模型

缺点:

         还原回的模型中,可能会没有中文注释,没有表外键对应关系(字段还有,索引关系没了)

前提:

        1,确认要生成模型的数据库是最新的,并且可以使用

        2,安装Powerdesigner软件

具体操作步骤:

一,建立ODBC数据源

        1, 打开系统ODBC数据源,位置“控制面板--管理工具--数据源(ODBC)

        2,选择系统DSN,点击添加按钮,会弹出如下界面,选择与数据库相匹配的驱动程序

3,点击完成,弹出数据源名称(自定),和选择你要连接的数据库,如下图所示

4,选择确定后,该数据源建立成功,可以双击该数据源名称进行连接测试,如下图所示

5,至此数据源建立完成,当然这些也可以不用在这里建立,在powerdesigner里也可以建立,建立方法为

选择Database->configure connections,转到system dsn标签,点击Add按钮,选数据库类型DB2,点击完成。显 示如下:输入DataSource Name“PDMTest”;输入ServerName“Database”, 配置完成。如下所示:


二,在Powerdesigner中逆向生成

      1,打开Powerdesigner工具,创建一个PDM文件,选择与之匹配的数据库类型“ibm db2 udb 8.x common server”。创建方法为:右键点击左侧面板中的WorkSpace---->new------>physical data nodel ,在DBMS中选择你要的数据类型,选择好后点击确定,则新建立了一个工作空间。

      2,选择Database菜单下的Reverse Engineer Database,弹出Database Reverse Engineering对话框,选Using an ODBC data source选ODBC数据源“s2ms”,如下图所示:


3,点击确定后,显示此数据库中所有表、视图、用户(这个选择一下该数据库的用户)。根据需要选择后,转换成pdm。图示如下


4,选择好后,点击OK,则生成模型。


三,利用脚本生成模型

       如果你不光有个正在使有的数据库,你还有一下建立库的脚本,那你发财了!因为用.sql的脚本生成的模型,就不存在用数据库生成的缺点了,具体操作如下:


二、 通过SQL脚本逆向工程生成PDM

1、 数据库SQL脚本文件crebas.sql。下为脚本实例:
/*==============================================================*/
/* Database name: PhysicalDataModel_1 */
/* DBMS name: ORACLE Version 9i */
/* Created on: 2003-07-13 10:49:08 */
/*==============================================================*/
/*==============================================================*/
/* Table: "class" */
/*==============================================================*/
create table "class" (
"classID" NUMBER(2) not null,
"className" VARCHAR2(24),
constraint PK_CLASS primary key ("classID")
)
/
/*==============================================================*/
/* Table: "student" */
/*==============================================================*/
create table "student" (
"studentID" NUMBER(10) not null,
"studentName" VARCHAR2(4),
"classID" NUMBER(2),
constraint PK_STUDENT primary key ("studentID")
)
/
alter table "student"
add constraint FK_STUDENT_REFERENCE_CLASS foreign key ("classID")
references "class" ("classID")
/

2、 还是创建一个pdm,选择Database--->Reverse Engineer Database,选择Using script files。


3、 看到由脚本自动生成相关的PDM如下所示:


四,生成模型后要导出数据库建库脚本

    导好的模型,当然是用来修改和导出建库脚本的,操作方法如下

      1,选择database--->generate database弹出如下窗口


在用户的none中选择数据库用户,同时可选要导出的表,最后点击确定,如果不能正常生成脚本提示模型错误,则在上图中的options中将check modle 的选项去掉,点击确定,生成sql脚本,

这时生成的脚本不要着急去用,因为可能是有问题,用记事本或其它工具打开这个脚本,你会发现在所属名上也就是s2ms上都会加上""号,用Ctrl+H,将所有"替换为空,就大功告成了!





原文地址:http://hi.baidu.com/china8jie/blog/item/fbd7d75cb583b447faf2c0da.html




想起来Sybase 的Power designer, 反向工程生成ER图, 这样看的就清楚了.

记录一下:
1. In PowerDesigner, choose File | Reverse Engineer | Database....
The New Physical Data Model Dialog box, shown next, appears.
DBMS要选成Oracle 10G, 然后点"OK"
2.在出来的database reverse engineering窗口里, 点上"Using script files", 再点那个"新建"的图标, 会出来个选择文件的对话框,选择script file的位置.
then press "OK".
3. 就生成了ER diagram.
OK, 继续奋战.
分享到:
评论

相关推荐

    PowerDesigner反向生成ER图

    ### PowerDesigner反向生成ER图的关键步骤 #### 步骤一:创建Physical Data Model 要开始反向生成ER图的过程,首先需要在PowerDesigner中创建一个新的“Physical Data Model”类型的项目。这一步骤是基于现有...

    利用powerdesigner反向数据库结构,生成ER图

    PowerDesigner 是一个功能强大且灵活的数据建模工具,可以对数据库进行反向工程,生成 ER 图。本文档将指导您如何使用 PowerDesigner 反向数据库结构,生成 ER 图。 概念解释 * 反向工程:是指从已有的数据库中...

    PowerDesigner oracle 生成的ER图

    PowerDesigner Oracle 自动生成ER图 PowerDesigner 是一款功能强大的数据建模工具,能够帮助用户快速生成ER图(实体关系图)。在本文中,我们将学习如何使用 PowerDesigner 生成 Oracle 数据库的ER图。 ER图是...

    PowerDesigner反向工程将数据库设计导出SQL脚本、HTML或World

    PowerDesigner 的反向工程功能还可以将数据库设计导出为 Word 文档,以便于生成报表和文档。用户可以根据需要选择要显示的内容,例如表格、视图、存储过程等,然后选择模板的样式和布局,以控制生成的 Word 文档的...

    PowerDesigner逆向工程导出Oracle表图

    三、PowerDesigner 反向工程生成 ER 图 PowerDesigner 不仅可以生成 SQL 语句,还可以生成 ER 图。要生成 ER 图,需要遵循以下步骤: 1. 打开 PowerDesigner,选择“文件”菜单中的“逆向工程”选项,然后选择...

    powerdesigner画ER图显示注释

    一个小脚本,可以让powerdesigner显示的ER图添加注释,不过需要做一些设置

    PowerDesigner使用.doc

    在本文中,我们将深入探讨如何使用 PowerDesigner 生成 SQL、反向工程创建 ER 图以及导出数据库 ER 图和 PDM 图。 一、PowerDesigner 生成 SQL 1. 为导出特定数据库表,首先需更改当前 DBMS:选择 "Database" -> ...

    powerdesigner16.0反向工程

    6. **查看和调整ER图**: 反向工程完成后,你可以看到ER图(Entity-Relationship Diagram),其中包含了数据库中的实体、关系、属性等元素。ER图用图形方式直观展示了数据库的结构。此时,你可以根据需要调整模型,...

    powerdesigner 反向工程(图示)

    《PowerDesigner反向工程详解》 在IT行业中,数据库设计是软件开发过程中的重要环节,而PowerDesigner作为一款强大的数据库设计工具,其反向工程功能则为数据库管理和优化提供了极大的便利。本文将详细介绍如何使用...

    powerdesigner逆向生成工具将注释字段添加到name字段上

    powerdesigner逆向工程导入mysql脚本生成PDM带全注释

    PowerDesigner15.1连接oracle11g逆向生成ER图

    - 数据库中的表结构被导入后,PowerDesigner会自动生成ER图。你可以通过调整视图布局,使得ER图更加清晰易读。 - ER图显示了实体、属性、关系以及约束等信息,有助于理解数据库的逻辑结构。 通过以上步骤,你已经...

    sql生成ER图PD.7z.zip

    "sql生成ER图"这个主题可能是指通过分析SQL脚本中的表定义、外键约束等信息,反向工程生成ER图。在数据库开发中,当我们已经有了现有的数据库结构,可以通过SQL查询获取表的信息,包括字段名、类型、主键、外键等,...

    使用Powerdesigner生成sql脚本

    ### 使用PowerDesigner生成SQL脚本及反向生成ER图详解 #### 一、使用PowerDesigner生成SQL脚本 PowerDesigner是一款强大的数据建模工具,它能够帮助用户进行数据建模,包括概念数据模型(CDM)、物理数据模型(PDM)等...

    PowerDesigner逆向工程

    在逆向工程向导的下一步,你可以选择要反向工程化的数据库对象。这可能包括表、视图、存储过程、函数等。根据实际需求,可以选择全部对象或仅包含特定对象的子集。 3. **映射数据类型** PowerDesigner支持多种...

    powerdesign数据库[SqlServer2005]反向表,并生成RTF文档

    反向工程完成后,你可以在 PowerDesigner 的工作区看到生成的 ER 图(实体关系图)。为了更好地查看整个数据库的结构,可以使用工具栏上的“缩小镜”功能来显示缩略图。此时,你可以对 PDM 进行重命名并保存,以便...

    数据库反向生成基础代码

    数据库反向生成基础代码是指通过特定工具或技术从已有的数据库结构中自动生成相应的应用程序代码,这大大减少了开发人员手动编写数据访问层的工作量。在软件开发过程中,尤其是在大型项目中,这种自动化过程能提高...

    PowerDesigner教程 PowerDesigner 教程

    例如,你可以设计一个ER图(实体关系图),PowerDesigner可以将其转换为具体的MySQL、Oracle或者SQL Server等数据库的DDL(Data Definition Language)语句。 反向工程则是从现有的数据库结构中生成模型的过程。这...

    PowerDesigner建模资料整理

    PowerDesigner的强大还体现在其能生成各种数据库脚本,支持多种数据库平台,如Oracle、MySQL、SQL Server等,并且可以进行性能优化和反向工程,将现有数据库结构转化为模型。 总结来说,这份“PowerDesigner建模...

    powerdesigner的使用ppt

    1. 报表生成:PowerDesigner支持生成各种报表,如ER图、属性表、SQL脚本等,便于交流和文档记录。 2. 图形定制:可以自定义图形样式,使模型更具可读性。 七、版本控制与团队协作 1. 版本管理:集成CVS或SVN等...

Global site tag (gtag.js) - Google Analytics