开发者社区> 杰克.陈> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

PowerDesigner逆向工程生成PDM模型及数据库

简介: 原文 http://www.cnblogs.com/springside4/archive/2012/04/16/2481149.html 在数据建模过程中,我们建立概念数据模型,通过正向工程生成物理数据模型,生成数据库建 库脚本,最后将物理数据模型生成关系数据库。
+关注继续查看

原文 http://www.cnblogs.com/springside4/archive/2012/04/16/2481149.html

在数据建模过程中,我们建立概念数据模型,通过正向工程生成物理数据模型,生成数据库建 库脚本,最后将物理数据模型生成关系数据库。系统数据库设计人员希望能够将数据库设计和关系数据库生成无缝地集成起来,如何保证物理数据模型与其对应数据 库之间的双向同步成为数据建模非常关键的一点。

Powerdesigner作为强大的Case工具,为我们提供了方便的逆向工程特性。可以将目前所有流行的后端数据库(包括Sybase、 DB2、Oracle等)的结构信息通过逆向工程加入到PowerDesigner的物理数据模型和概念数据模型中,包括表、索引、触发器、视图等。

本文介绍的内容仅涉及PDM(物理数据模型)的逆向工程。

PDM中的逆向工程是指从现有DBMS的用户数据库或现有数据库SQL脚本中生成PDM的过程。逆向工程有两种对象:1)通过ODBC数据源连接数据库 2) 现有数据库sql脚本。

本文示例的系统环境如下:

1、 数据库已创建完毕,访问用户和密码设置完成。数据库为Oracle9i。

2、 ODBC数据源已由oracle 的Net Configuration Assistant 创建,本地网络命名服务“Database”。

3、 sql脚本示例crebas.sql。

4、 Powerdesigner9.5已安装完成。

一、 通过数据源连接数据库逆向工程生成PDM

1、 配置用户数据库连接参数

选择Database->configure connections,转到system dsn标签,

点击Add按钮,选数据库类型Oracle,点击完成。显示如下:输入DataSource Name“PDMTest”;输入ServerName“Database”, 配置完成。

点击“Test Connect”输入ServerName“Database”,用户名和密码,若连接成功,显示如下:

以后每次连接,选择Database?connect,选择odbc数据源,输入ServerName“Database”,用户名和密码。若无提示,则说明连接成功。同时,可以通过Database?Connection Information 查看连接信息。

2、 设置逆向工程选项,生成pdm

创建一个PDM文件,选择与之匹配的数据库类型“oracle9i”。

选择Database?Reverse Engineer Database,弹出Database Reverse Engineering对话框,选Using an ODBC data source选ODBC数据源“PDMTest”

点击确定后,显示此数据库中所有表、视图、用户。根据需要选择后,转换成pdm。

3、 查看数据

对于生成好的PDM,选择一个表图形符号,点击右键,选择View Data,就可以访问表中的数据了。

二、 通过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如下所示:

pdm做好后,最终是要将其转化为数据库实体的。

1.确认当前Powerdesigner设置的dbms是否正确,即是否是我们要生成的数据库类型,我在这里使用的是sqlserver2000:

Powerdesigner->数据库->更改当前dbms,选择您的数据库类型。

2.配置Powerdesigner与数据源的连接

Powerdesigner->数据库->配置连接->用户dsn(或系统dsn)->选择、添加您的数据源

3.连接

Powerdesigner->数据库->连接->设置好您刚才建立的dsn确定。

OK,设置好连接后我们就可以将pdm生成sql语句了。

4.数据库生成

Powerdesigner->数据库->生成数据库->配置好(默认就可以)后选择确定就好了。

拿到sql脚本语句,大家都知道应当如何做了吧,放到sql查询分析器里执行吧。

 

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
教你使用powerDesigner反向生成oracle数据库模型
教你使用powerDesigner反向生成oracle数据库模型
194 0
PowerDesigner概念模型与物理模型相互转换及导出数据字典
原文:PowerDesigner概念模型与物理模型相互转换及导出数据字典   最近公司项目竣工,验收完成后,把整体平台的所有文档都写清楚,找包发给甲方,由于本人是维护数据库工作,依上面要求,必须编写《数据库设计说明书》里面格式包含三个部分:概念模型、物理模型、数据字典;平时我使用PowerDesi...
1864 0
PowerDesigner生成Access数据库
1、打开PowerDesigner,设置PowerDesigner的当前数据库为Access; 2、在PowerDesigner中新建表结构(物理模型); 3、PowerDesigner菜单中:Database -> Generate Database.
818 0
使用PowerDesigner生成数据库测试数据
原文http://blog.csdn.net/horace20/article/details/6672081 特别说明:本文产生于个人工作总结,转载请注明原文出处http://blog.csdn.net/horace20 1、环境        PowerDesigner15.2.0.3042-BEAN+ MySQL5.5 + mysql-connector-odbc-5.1.8        以上软件在网上都很容易找到,这里就不再给出相关链接!系统环境为WindowsXP。
1112 0
PowerDesigner教程系列(一)概念数据模型
原文http://www.cnblogs.com/yxonline/archive/2007/04/09/705479.html 目标:本文主要介绍PowerDesigner中概念数据模型 CDM的基本概念。
919 0
PowerDesigner教程系列(五)概念数据模型
原文http://www.cnblogs.com/yxonline/archive/2007/04/11/708387.html 目标:本文主要介绍数据项、新增数据项、数据项的唯一性代码选项和重用选项等。
780 0
PowerDesigner教程系列(四)概念数据模型
原文http://www.cnblogs.com/yxonline/archive/2007/04/11/708271.html   目标:本文主要介绍如何定义实体的主、次标识符。一、标识符标识符是实体中一个或多个属性的集合,可用来唯一标识实体中的一个实例。
695 0
PowerDesigner 教程系列(八)概念数据模型
原文 http://www.cnblogs.com/yxonline/archive/2011/01/14/1935708.html   目标:本文主要介绍域的概念以及使用。   一、概念 域:实际上就是一个取值范围,也可扩展为一个数据类型。
754 0
+关注
杰克.陈
一个安静的程序猿~
10424
文章
2
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载