当前位置: 主页 > 数据库

power designer 15 数据库逆向工程-power designer系统分析与建模实战

发布时间:2023-02-08 14:11   浏览次数:次   作者:佚名

设计之路:使用 Power Designer 工具进行数据库设计

文/朋友

日期:/2013-10-13

一直使用Power Designer做数据库设计有一段时间了,但是有些功能一直没有用到。 这篇博文将详细讲解笔者最近使用Power Designer的一些功能。

1.使用PD连接Oracle数据库

前几天跟进了一个半成品的小系统,使用Oracle 11g数据库,由于时间紧,项目组成员没有文档规范意识,每个模块的数据库表都是各自独立设计的开发人员,并没有完整的物理模型的物理模型设计文档,给维护带来很大的困难。

因为只有Oracle数据库才有表结构,所以想通过Oracle数据库反向生成一个物理模型。 首先,我需要使用 Power Designer 连接到 Oracle 数据库。

1.1 新建物理数据模型

点击“文件”->“创建新模型”,在弹出的界面中使用默认选择(“模型”->“物理数据模型”->“物理图”),修改“模型名称”为名称在系统“DBMS”中选择“ORACLE Version 11g”,点击“OK”按钮,创建一个新的物理数据模型。 如下所示:

power designer odbc_power designer 15 数据库逆向工程_power designer系统分析与建模实战

【说明】笔者使用的Power Designer版本为15.1power designer 15 数据库逆向工程,链接的Oracle版本为Oracle 11g。

1.2 创建Oracle数据源

点击“数据库”->“配置数据连接”,在弹出的界面中选择“连接配置文件”,点击“”按钮,弹出创建数据源界面,如下图:

power designer系统分析与建模实战_power designer odbc_power designer 15 数据库逆向工程

“连接配置文件连接定义”界面的设置如下:

power designer系统分析与建模实战_power designer odbc_power designer 15 数据库逆向工程

接口设置需要注意:

(1) Connection Profile name:输入数据库连接文件名,会自动加上后缀.dcp

power designer odbc_power designer系统分析与建模实战_power designer 15 数据库逆向工程

(2)目录:可以选择任意目录;

(3)连接类型:连接类型选择“JDBC”;

(4)DBMS类型:数据库管理系统选择“Oracle”;

(5)用户名:数据库用户名;

(6)密码:数据库密码;

(7)JDBC驱动类:在下拉列表中选择JDBC的驱动类选择驱动类oracle.jdbc.OracleDriver;

(8)JDBC连接URL:JDBC连接地址,即被访问服务器的路径,格式为:

jdbc:oracle:thin:@database IP地址 数据库连接端口:orcl

(9) JDBC驱动jar文件:需要选择指向ojdbc14.jar或其他驱动包的按钮路径。

笔者在测试过程中发现无法连接数据库,后来更换新笔记本后发现JDK没有安装。 请确认JDK安装成功,并正确设置JAVA_HOME、CLASSPATH和PATH环境变量。

如果Power Designer找不到选择的jar包或者jar包不在CLASSPATH环境变量指定的路径下,会报错:NonSQLError: Could not load class oracle.jdbc.OracleDriver。

设置CLASSPATH环境变量时,将值设置为.;%JAVA_HOME%\lib,其中“.;” 表示当前路径。 为了让Power Designer能够找到ojdbc14.jar,可以将ojdbc14.jar放在Power Designer的安装目录下。 或者放在%JAVA_HOME%\lib 目录下。

[说明] Oracle的驱动jar包ojdbc14.jar的读者可以从网上下载,也可以通过本博客提供的下载链接下载(%E8%AE%BE%E8%AE%A1%E4%B9%8B% E8%B7% AF%EF%BC%9A%E4%BD%BF%E7%94%A8Power%20Designer%E5%B7%A5%E5%85%B7%E8%BF%9B%E8%A1%8C% E6%95%B0%E6%8D%AE%E5%BA%93%E8%AE%BE%E8%AE%A1.rar)

1.3 测试链接是否成功

您可以在“连接配置文件连接定义”界面点击“测试连接”按钮,进入用户名/密码重新输入页面,如下图:

power designer系统分析与建模实战_power designer odbc_power designer 15 数据库逆向工程

如果数据库连接成功,会出现如下界面,表示连接测试成功:

power designer 15 数据库逆向工程_power designer odbc_power designer系统分析与建模实战

power designer 15 数据库逆向工程_power designer odbc_power designer系统分析与建模实战

如果连接失败,会提示“连接测试失败”,请确认链接地址是否正确。

1.4 连接到Oracle数据库

Oracle数据源创建成功后,可以选择菜单栏“Database”->“Connect...”弹出“Connect to a Data Source”界面,选择刚才创建的“xx_portal.dcp” “Connection Profile”下拉,点击“Connect”按钮连接数据库。 如下所示:

power designer odbc_power designer 15 数据库逆向工程_power designer系统分析与建模实战

单击“连接”按钮连接到数据库。 连接数据库成功后,可以查看数据库中的表结构,也可以通过Oracle数据库中的表结构反向生成PDM文件。

2.连接Oracle数据库逆向生成PDM

使用逆向工程创建物理数据模型PDM文件,也可以选择“文件”->“逆向工程”->“数据库”,在弹出的界面中输入“模型名称”作为子系统的名称,并为“DBMS”选择“ORACLE”。 Version 11g”,点击“确定”按钮,进入连接数据源页面。如下图:

power designer odbc_power designer系统分析与建模实战_power designer 15 数据库逆向工程

点击【确定】按钮,设置逆向工程选项界面,如下图:

power designer odbc_power designer 15 数据库逆向工程_power designer系统分析与建模实战

在“User a data source”中,可以选择刚刚创建的数据源“xx_portal.dcp”。 默认勾选“逆向工程用户管理员权限”,点击“确定”按钮,进入数据库逆向工程界面,如下图:

power designer系统分析与建模实战_power designer odbc_power designer 15 数据库逆向工程

单击“确定”按钮生成 PDM 文件。 生成的PDM文件会包含表结构、主键、外键、索引、约束等选项信息。

【说明】由于笔者写这篇博文时机器暂时无法连接到之前使用的Oracle数据库,所以上图是从网上复制过来的。

3. PDM 创建多个图表用于设计和查看

把所有的表放在一张Physical Diagram里,非常不方便查看。 Power Designer 的一个 PDM 文件可以创建多个物理图。 新建物理数据模型后,可以选择物理模型的名称,右键选择“New”->“Physical Diagram”,新建一个Physical Diagram。

power designer odbc_power designer 15 数据库逆向工程_power designer系统分析与建模实战

例如,笔者为“员工办公门户系统物理模型”建立了如下物理图:

power designer 15 数据库逆向工程_power designer系统分析与建模实战_power designer odbc

选择不同的“Physical Diagram”,右击并选择“Open Diagram”可以看到Physical Diagram下的表格设计。 一般Physical Diagram是按照大模块建立的。

4.使用Ctrl+K在不同PD的一个表中创建多个symbol

多个“Physical Diagrams”可能与某个“Physical Diagram”中的某个表相关联。 例如,两个物理图的用户标识可以是“新闻”、“培训课程、在线考试和问卷调查”。 两者都与系统管理中的用户表有外键关系。

笔者使用的方法是:先用Ctrl+C复制,再用Ctrl+K粘贴到Diagram中。

Ctrl+V:创建一个与复制的实体相同的实体,相当于新建一个实体(实体名称必须唯一);

Ctrl+K:创建原实体的快捷方式(原实体修改时新实体也会随之改变)。

5. 附录:使用PL/SQL连接Oracle数据库

在第1章和第2章中,需要安装Oracle客户端,然后使用PL/SQL连接Oracle,检查是否连接成功。

5.1 下载Oracle免安装客户端oracle_instantclient

在Oracle官网下载Oracle免安装客户端instantclientbasicpackage,地址如下:

在该页面搜索“客户端”,页面如下:

power designer系统分析与建模实战_power designer odbc_power designer 15 数据库逆向工程

点击“Instant Clinet”进入下载列表power designer 15 数据库逆向工程,如下图:

power designer 15 数据库逆向工程_power designer odbc_power designer系统分析与建模实战

笔者是32位操作系统,所以选择“Instant Client for Microsoft Windows (32-bit)”。 下载时需要AcceptLicenseAgreement,如果没有oracle账号,需要先注册一个oracle账号。 页面如下所示:

power designer odbc_power designer 15 数据库逆向工程_power designer系统分析与建模实战

power designer odbc_power designer系统分析与建模实战_power designer 15 数据库逆向工程

另外,请选择合适的版本:

instantclient-basic-win32-11.xxxxzip:支持Oracle 9i以上版本(不包括Oracle9i)

instantclient-basic-win32-10.xxxzip:支持Oracle8i和Oracle9i。

笔者下载了最新版本的instantclient-basic-nt-12.1.0.1.0.zip。

下载完成后,将文件解压到本地路径,如:D:\software\instantclient_11_2 在此路径下创建NETWORK/ADMIN文件夹,并在ADMIN文件夹下创建tnsnames.ora文件。 参考内容如下:

power designer 15 数据库逆向工程_power designer odbc_power designer系统分析与建模实战

orcl =

power designer 15 数据库逆向工程_power designer odbc_power designer系统分析与建模实战

(说明 =

power designer 15 数据库逆向工程_power designer odbc_power designer系统分析与建模实战

(地址列表 =

power designer 15 数据库逆向工程_power designer odbc_power designer系统分析与建模实战

(地址 =(协议 = TCP)(主机 = 10.28.19.120)(端口 = 1521))

power designer 15 数据库逆向工程_power designer odbc_power designer系统分析与建模实战

)

power designer 15 数据库逆向工程_power designer odbc_power designer系统分析与建模实战

power designer系统分析与建模实战_power designer 15 数据库逆向工程_power designer odbc

(连接数据 =

power designer 15 数据库逆向工程_power designer odbc_power designer系统分析与建模实战

(SERVICE_NAME = orcl)

power designer 15 数据库逆向工程_power designer odbc_power designer系统分析与建模实战

)

power designer 15 数据库逆向工程_power designer odbc_power designer系统分析与建模实战

)

5.2 安装PL/SQL并配置

安装PLSQL Developer,打开后点击“取消”按钮进入。 在菜单栏中选择“工具”->“首选项”,设置Oracle主目录名和OCI库,如下图:

power designer odbc_power designer系统分析与建模实战_power designer 15 数据库逆向工程

设置好后,关闭PL/SQL,再打开。 在登录页面,选择tnsnames.ora中设置的“数据库”,输入用户名和密码进行登录。如下图:

power designer系统分析与建模实战_power designer 15 数据库逆向工程_power designer odbc

六、参考文件

(1)《PowerDesigner15连接Oracle数据库,导出Oracle表结构》:

(2)《如何使用Powerdesigner的PDM(Physical Data Model)生成数据库和逆向工程(从现有数据库生成PDM)》:

(3)《在powerdesigner中,一个表格,如何在图中创建多个符号》:

(4)《Oracle免安装客户端oracle_instantclient的安装与配置》:

发表于2013-10-13 12:23 阿米果阅读(3007) 编辑收藏分类:建筑师之路