有关CDM、PDM、SQL之间转换以及不同数据库之间库表Sql的移植,首先要了解的是它们各自的用途、这里就简单的描述一下,不做详细的解释了。
CDM:概念数据模型。CDM就是以其自身方式来描述E-R图。它不考虑物理实现的细节,只表示数据库的整体逻辑结构,独立于任何软件和数据存储结构。
PDM:物理数据模型。考虑了数据库的物理实现,包括软件和数据存储结构,即:PDM与具体的数据库有关。
下面做了个简单的例子,简述了CDM与PDM与Sql之间的转换,以及从MySql如何转成Oracle。掌握了这几种转变可以实现不同数据库之间脚本的转变。
一、从数据库脚本导出PDM(mysql数据库)
前提是安装PD和导出MySQL脚本
具体操作如下:
- 首先安装PowerDesigner
- 安装完成后、在数据库中导出SQL脚本,只导出结构即可
- 接下来选择两个入口方式均可以:
----------------------------------------------第一种-------------------------------------
- 打开PowerDesigner然后依次选择 File——>Reverse Engineer——>Database
选择相应的数据库类型(这里测试用的是Mysql5.0):
然后选择Using Script File,选择刚才导出的脚本
-----------------------------------------------第二种:--------------------------------------
- 选择DataBase -> update modal from database
然后选择Using Script File,选择刚才导出的脚本
-----------------------------------------------------------------------------------------
点击确定后将产生相应的PDM:
至此SQL脚本转PM完成。
二、PDM转CDM
在这里在上面转出的PDM的基础上转成CDM:
- 选择tools -> Generate Conceptual Data Model
- 点击确定即可
三、PDM转SQL脚本
还是在上面的PDM上进行操作
1.导出全部的SQL脚本
- 选择 database -> generate database ...
- 然后可以在弹出的窗口选择相应的表或者点击preview查看相应的SQL:
- 输上对应的SQL脚本输出位置确定即可
2.导出单个表的SQL脚本
- 点击对应的PDM
- .点击preview然后预览单表的SQL,复制到Mysql执行即可。
有时候PD的工具栏去掉后找不见,可以点击view->Toolbox