PowerDesigner之CDM、PDM、SQL之间转换

前段时间用了下PowerDesigner做了一些辅助工作、在此特地小结一下:

有关CDM、PDM、SQL之间转换以及不同数据库之间库表Sql的移植,首先要了解的是它们各自的用途、这里就简单的描述一下,不做详细的解释了。

CDM:概念数据模型。CDM就是以其自身方式来描述E-R图。它不考虑物理实现的细节,只表示数据库的整体逻辑结构,独立于任何软件和数据存储结构。 

PDM:物理数据模型。考虑了数据库的物理实现,包括软件和数据存储结构,即:PDM与具体的数据库有关。


下面做了个简单的例子,简述了CDM与PDM与Sql之间的转换,以及从MySql如何转成Oracle

一、MySql_DB——>PDM——>CDM——>Oracle_DB

意思是要将MySql中的库表脚本转成相应的Oracle脚本;

所需要的过程是,首先将MySql中的Sql脚本转成其相应的MySql_PDM,然后由这个PDM再转换成CDM,这时由于CDM是与具体的DBMS无关的、所以此时我们将CDM转成Oracle_PDM,最后将这个Oracle_PDM导成OracleSQL文件。

上面的流程强调的是必须转成CDM先,因为CMD不同于PDM,它是与DBMS无关的、只表示数据库的整体逻辑结构。


具体操作如下:

首先安装PowerDesigner


安装完成后、在数据库中

创建好表(当然这里测试用的MySql,这里只简述其中一个表了,比方说此时我们已经有了该数据库表的Sql脚本文件了,当然也可以在PowerDesigner进行连接的。)


打开PowerDesigner然后依次选择

File——>Reverse Engineer——>Database



选择相应的数据库类型(这里测试用的是Mysql5.0):




然后选择Using Script File



点击确定后将产生相应的MySql_PDM:




然后选择Tool——>Generate Conceptual Data Model

或者是快捷键:Ctrl+Shift+C

PowerDesigner 中的快捷键大致是:

PDM 即:Ctrl+Shift+P

CDM 即:Ctrl+Shift+C

OOM 即:Ctrl+Shift+O

即根据字母来生成;

SQL脚本:Ctrl+G




得到CDM后我们就可以将CDM转为相应DBMS的PDM,即:快捷键Ctrl+Shift+P (这里我们要生成的是Oracle,所以选择了Oracle1g),

如下图所示




点击确定后生成了Oracle_PDM



这时只要使用快捷键Ctrl+G即可将Oracle_PDM转成Oracle脚本sql文件。

生成成功后,唯一点不足是:存储过程、触发器等这些的转换,正在摸索中。暂时还没实现。

以上内容简述了CDM与PDM与Sql之间的简单转换,有关PowerDesigner连接数据库以及OOM、Entity Class等将在后面的文章中分享!!!

原文地址:https://www.cnblogs.com/ihanliu/p/5266263.html