源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

详解PowerDesigner之CDM、PDM、SQL之间转换

  • 时间:2021-12-18 07:18 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:详解PowerDesigner之CDM、PDM、SQL之间转换
[b]详解PowerDesigner之CDM、PDM、SQL之间转换[/b] 前段时间用了下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 [img]http://files.jb51.net/file_images/article/201710/2017101815402420.jpg[/img] 安装完成后、在数据库中 创建好表(当然这里测试用的MySql,这里只简述其中一个表了,比方说此时我们已经有了该数据库表的Sql脚本文件了,当然也可以在PowerDesigner进行连接的。) [img]http://files.jb51.net/file_images/article/201710/2017101815402421.jpg[/img] 打开PowerDesigner然后依次选择 File——>Reverse Engineer——>Database [img]http://files.jb51.net/file_images/article/201710/2017101815402422.jpg[/img] 选择相应的数据库类型(这里测试用的是Mysql5.0): [img]http://files.jb51.net/file_images/article/201710/2017101815402423.jpg[/img] 然后选择Using Script File [img]http://files.jb51.net/file_images/article/201710/2017101815402424.jpg[/img] 点击确定后将产生相应的MySql_PDM: [img]http://files.jb51.net/file_images/article/201710/2017101815402425.jpg[/img] 然后选择Tool——>Generate Conceptual Data Model 或者是快捷键:Ctrl+Shift+C PowerDesigner 中的快捷键大致是: PDM 即:Ctrl+Shift+P CDM 即:Ctrl+Shift+C OOM 即:Ctrl+Shift+O 即根据字母来生成; SQL脚本:Ctrl+G [img]http://files.jb51.net/file_images/article/201710/2017101815402426.jpg[/img] 得到CDM后我们就可以将CDM转为相应DBMS的PDM,即:快捷键Ctrl+Shift+P (这里我们要生成的是Oracle,所以选择了Oracle1g), 如下图所示 [img]http://files.jb51.net/file_images/article/201710/2017101815402527.jpg[/img] 点击确定后生成了Oracle_PDM [img]http://files.jb51.net/file_images/article/201710/2017101815402528.jpg[/img] 这时只要使用快捷键Ctrl+G即可将Oracle_PDM转成Oracle脚本sql文件。 生成成功后,唯一点不足是:存储过程、触发器等这些的转换,正在摸索中。暂时还没实现。 如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部