【Powerdsiger】 逆向工程获取oracle数据库中PMD-阿里云开发者社区

开发者社区> 数据库> 正文

【Powerdsiger】 逆向工程获取oracle数据库中PMD

简介:
  在数据建模过程中,我们建立概念数据模型,通过正向工程生成物理数据模型,生成数据库建库脚本,最后将物理数据模型生成关系数据库。系统数据库设计人员希望能够将数据库设计和关系数据库生成无缝地集成起来,如何保证物理数据模型与其对应数据库之间的双向同步成为数据建模非常关键的一点。Powerdesigner作为强大的Case工具,为我们提供了方便的逆向工程特性。可以将目前所有流行的后端数据库(包括Sybase、DB2、Oracle等)的结构信息通过逆向工程加入到PowerDesigner的物理数据模型和概念数据模型中,包括表、索引、触发器、视图等。
需要使用powerdsigner做逆向工程获取数据库中创建表的相关联系。在使用,连接数据库时候出现如下错误:
第一次连接数据库,powerdsigner·会在数据库上建立以‘PM’开头的表和视图。第二次连接的时候出现
repository -> connect 连接时出现报错:
The repository does not contain all the required definitions. Only an administrator can update it.
点击 确定,出现错误:
The connection failed because the repository has not been installed on this database.
解决方法:
set echo off feed off heading off
spool /home/oracle/droppmtable.sql 
select 'drop table '||tname||' purge;' from tab where tname like 'PM%';
spool off
之后执行产生出的脚本 ,删除数据库中的pm开头的表就解决问题了。
使用powerdsigner·的逆向工程必须先建立ODBC数据源。
1.打开或新建一个PhysicalDataModel文件(.pdm) 
2.在菜单项 Database->Configure Connections ->System DSN ->Add ->选择Oracle ODBC Driver完成->输入Data Source Name(数据源名称,比如RAC),输入Service Name(就是你要连接的数据库的TNSNAMES.ORA 文件里的网络服务名) ,UserID(可以先不填)  点击 OK 
22664653_201111082143441.jpg
3.Database->Connet->选择第一项Machine data source 选择刚才建好的数据源
RAC,在Login里输入UserID和Password,点击 Connect 。提示连接成功。
 
4.Database->Reverse Engineer Database ->选择 Using an ODBC data source项,下拉框中是刚才配好的数据源 ,点击确定->一个连接输入框输入User Name和Password点击OK 
22664653_201111082144091.jpg
5.出现表格的列表,选择需要导出的表->点 OK,数据表比较多就需要等待一段时间。
22664653_201111082144561.jpg
6.将导好的pdm文件转成cdm文件 Tools->Generate Conceptual Data Model -> Ceneral 项:默认的name和code可以自己改改,Detail项: 将 Check model 前面的勾去掉,->确定 cdm图生成。
22664653_201111082145351.jpg

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

分享:
数据库
使用钉钉扫一扫加入圈子
+ 订阅

分享数据库前沿,解构实战干货,推动数据库技术变革

其他文章