天天看点

使用PowerDesigner逆向工程生成及更新Oracle数据库的表结构文件(物理模型图.pdm)

一、使用背景

公司最近一个项目由于原有表结构在项目迭代开发的过程中,表结构跟预期有较大的变动,所以需要跟新表结构文件来满足日常查阅;

二、创建流程

1、使用PowerDesigner创建模块

使用PowerDesigner逆向工程生成及更新Oracle数据库的表结构文件(物理模型图.pdm)

2、生成相应的数据源连接文件(.dcp)

Database–>Configure Connections

使用PowerDesigner逆向工程生成及更新Oracle数据库的表结构文件(物理模型图.pdm)
使用PowerDesigner逆向工程生成及更新Oracle数据库的表结构文件(物理模型图.pdm)

URL中的数据库名称PL/Sql查询语句:

select INSTANCE_NAME from v$instance;
           

当正确填写上述信息后点击测试并填写oracle数据库登录密码

假如测试失败在控制台可能会出现以下错误:

1、Could not Initialize JavaVM

此问题出现几率较大,因为PowerDesigner目前只支持32位JDK(网上说法,仅供参考),所以你只装了64位JDK的话需要加装32位JDK及配置环境变量(安装文件及步骤可查阅资料)。还有一种不需要配置环境变量的方法如下:

使用PowerDesigner逆向工程生成及更新Oracle数据库的表结构文件(物理模型图.pdm)

在命令行模式之下,切换到PowerDesigner安装目录之下执行图中命令完成JDK环境(上述JDK路径为32位JDK的安装路径)临时设置,再通过pdshell16.exe命令启动PowerDesigner即可。

2、Could not load class oracle.jdbc.driver.OracleDriver

这个问题出现的原因是因为PowerDesigner为找到Oracle的驱动jar包,最好将ojdbc14.jar(自寻查阅下载)放置到PowerDesigner的安装路径里,最后还需配置此jar包的环境变量如下:

使用PowerDesigner逆向工程生成及更新Oracle数据库的表结构文件(物理模型图.pdm)

当然还可以通过命令行的方式(个人没成功,大家可以尝试):

在设置JDK后继续执行下面命令:

Set CLASSPATH =  D:\app\ojdbc14.jar
           

而后再通过pdshell16.exe命令启动PowerDesigner即可。

如果点击测试后出现下图弹框表示测试通过

使用PowerDesigner逆向工程生成及更新Oracle数据库的表结构文件(物理模型图.pdm)

点击确定OK之后在列表中生成了数据源连接文件test.dcp如下

使用PowerDesigner逆向工程生成及更新Oracle数据库的表结构文件(物理模型图.pdm)

3、接下来利用此dcp文件连接数据库并生成表结构文件

步骤如下:

使用PowerDesigner逆向工程生成及更新Oracle数据库的表结构文件(物理模型图.pdm)
使用PowerDesigner逆向工程生成及更新Oracle数据库的表结构文件(物理模型图.pdm)

上述步骤后点击确定在弹出框中选择想要导出的表

使用PowerDesigner逆向工程生成及更新Oracle数据库的表结构文件(物理模型图.pdm)

点击ok等待完成即可

使用PowerDesigner逆向工程生成及更新Oracle数据库的表结构文件(物理模型图.pdm)

三、更新文件流程

Database --> Updata Model from Database

后置流程跟生成类似,参考即可