PowerDesigner是一款功能很强大的建模工具软件,足以与Rose比肩,相同是当今最著名的建模软件之中的一个。Rose是专攻UML对象模型的建模工具,之后才向数据库建模发展,而PowerDesigner则与其正好相反,它是以数据库建模起家,后来才发展为一款综合全面的Case工具。
PowerDesigner主要分为7种建模文件:
1. 概念数据模型 (CDM)
对数据和信息进行建模,利用实体-关系图(E-R图)的形式组织数据,检验数据设计的有效性和合理性。
2. 逻辑数据模型 (LDM)
PowerDesigner 15 新增的模型。逻辑模型是概念模型的延伸,表示概念之间的逻辑次序,是一个属于方法层次的模型。详细来说,逻辑模型中一方面显示了实体、实体的属性和实体之间的关系,还有一方面又将继承、实体关系中的引用等在实体的属性中进行展示。逻辑模型介于概念模型和物理模型之间,具有物理模型方面的特性,在概念模型中的多对多关系,在逻辑模型中将会以添加中间实体的一对多关系的方式来实现。
逻辑模型主要是使得整个概念模型更易于理解,同一时候又不依赖于详细的数据库实现,使用逻辑模型能够生成针对详细数据库管理系统的物理模型。逻辑模型并非在整个步骤中必须的,能够直接通过概念模型来生成物理模型。
3. 物理数据模型 (PDM)
基于特定DBMS,在概念数据模型、逻辑数据模型的基础上进行设计。由物理数据模型生成数据库,或对数据库进行逆向project得到物理数据模型。
4. 面向对象模型 (OOM)
包括UML常见的全部的图形:类图、对象图、包图、用例图、时序图、协作图、交互图、活动图、状态图、组件图、复合结构图、部署图(配置图)。OOM 本质上是软件系统的一个静态的概念模型。
5. 业务程序模型 (BPM)
BPM 描写叙述业务的各种不同内在任务和内在流程,并且客户怎样以这些任务和流程互相影响。 BPM 是从业务合伙人的观点来看业务逻辑和规则的概念模型,使用一个图表描写叙述程序,流程,信息和合作协议之间的交互作用。
6. 信息流模型(ILM)
ILM是一个高层的信息流模型,主要用于分布式数据库之间的数据复制。
7. 企业架构模型(EAM):
从业务层、应用层以及技术层的对企业的体系架构进行全方面的描写叙述。包含:组织结构图、业务通信图、进程图、城市规划图、应用架构图、面向服务图、技术基础框架图。
正所谓“工欲善其事必先利其器”,PowerDesigner就是一把强大的“神器”,若能运用自如,再身怀“绝世武功”,那你基本就遇神杀神遇佛杀佛了!
关于PowerDesigner物理数据模型的基本使用,我这里就不废话了,给出个连接,地球人看完都知道:http://www.cnblogs.com/huangcong/archive/2010/06/14/1757957.html
以下就一些比較高级型的使用方法和技巧我着重说明下。
1. 生成sql脚本
Database→Generate Database
选择要输出的文件路径,即文件存储路径,并依据须要改动文件名称,单击确定后便会生成sql脚本。
在Options选项卡里,能够个性化选择和配置sql脚本,如取消外键,去除drop语句等。
Selection选项卡中能够选择哪些表要生成sql脚本。
在Preview选项卡能够预览将要生成的sql脚本。
2. 将全部名词转化为大写
tools→Model Options...→Naming Convention→Code→Uppercase。
3. 表字段设计窗体显示comment来编写凝视
双击表打开表的属性窗体→Columns选项卡→单击上排倒数第二个图标(Customize Columns and Filter)→勾选comment
4. 改动表的字段Name的时候,Code不自己主动跟着变
tools→General Options...→Dialog→取消勾选Name to Code mirroring
5. 不同数据库之间的转化
Database→Change Current DBMS→选择要转换成的目标数据库
6. 导入sql脚本生成对应的数据库表模型图
File→Reverse Engineer→Database...→改动模块名称并选择DBMS
Using script files→点击下方图标(Add Files)来加入sql脚本文件→确定
7. 由物理模型生成对象模型,并生成对应的get、set方法
tools→Generate Object-Oriented Model...→选择语言→改动Name和Code→(Selection选项卡→选择要生成对象模型的表)→确定
双击生成的某张表的类图打开属性窗体→选中所有字段→将字段Visibility所有改为private→单击下方Add...button→选择Get/Set Operations→确定
之后生成代码就可以:Language→Generate Java Code...
【注意:不同语言Add...button下的内容有差别,如C#是Property】
6. 生成数据库文档
Report→Generate Report...→选择Generate RTF→改动Repor namet→语言选择Chinese→选择文件存放位置→确定
PowerDesigner还提供了文档编辑功能:Report→Reports...→点击New Report图标→改动Repor namet→语言选择Chinese→Report template选择Full Physical Report
之后就可以打开文档编辑窗体,只是限于篇幅这里就不再具体说明怎样编辑了,大家自己看看吧。
8. 怎样建立自增主键
双击表打开属性窗体→勾选P主键复选框→双击设置为主键的字段(在行的头部双击)或者单击上方的属性图标button→在打开的窗体下方(注意不同数据库不一样,sql server是identity复选框)选择sequence,假设没有则单击旁边的新建button创建一个sequence。
9. 怎样建立视图
工具栏中单击视图(view)button→创建视图→双击视图打开属性窗体,当中Usage是表示视图是仅仅读的还是可更新的。假设我们仅仅创建一般的视图,那么选择query only选项就可以。
切换到SQL Query选项卡,在文本框中能够设置定义视图的sql查询语句,在定义视图时最好不要使用*,而应该使用各个须要的列名,这样在视图属性的Columns中才干看到每一个列。单击右下角Edit with SQL Editorbutton,就可以弹出SQL Editor编辑器,编写SQL语句。也可採用其它sql语句生成器生成sql语句。
10. 怎样建立索引
双击表打开属性窗体→选择Indexes选项卡→新建一索引→双击该索引打开属性窗体
选择Columns选项卡→单击Add Columns图标button→选择要建立索引的字段→确定
这里Column definition就不要选了,会与主键冲突。
11. 怎样建立存储过程
工具栏中单击Procedurebutton→创建存储过程→双击存储过程打开属性窗体→选择Definition选项卡,当中在下拉列表框中,有Default Procedure、Default Function这两个选项,前者是定义过程,后者是定语函数,系统会依据选择的类型创建SQL语句的模板→编辑存储过程脚本。
以上就是PowerDesigner物理模型的最主要内容了,事实上这不过沧海一粟罢了,只刚刚涉及到了一个模型,还有其它好多模型值得我们学习,这里要想真的讲全面的话,那一篇博文肯定容不下,须要连载了。
PowerDesigner真的非常强大,用它设计UML相同非常牛叉,大家有时间真应该好好学学这个工具怎么使,假设可能,我可能会在今后的博文中介绍下怎样用PowerDesigner设计对象模型UML,或者搞不好真的要连载了,呵呵。那么小小期待下吧!