No.15如何进行数据库的逆向工程?一般常用的有CDM,PDM,UML建模,CDM可以转为PDM。
支持正向[生成数据库]和逆向工程[从数据库中生成],并直接关联到到数据库中,PDM可以直接和数据库进行关联,并将数据库,表,视图,触发器等数据库对象生成到数据库中,也可将这些对象更新到PDM中。
PowerDesigner的几个主要常用菜单是MODEL、DATEBASE、Tool,这三个菜单下命令使用比较多,要熟悉。
PD还可以用来画用例图,序列图,类图等UML图。
也可以画企业架构图,软件应用架构图等等图形
说明:本文提到的PD基于PD15.英文版。
No1:是不是一定要从CDM开始设计,然后在进行PDM的设计?
本人觉得没有必要,项目的大小、熟悉程度、起步和个人习惯不一样,熟练业务的,项目小的直接用PDM设计未尝不可。
NO2:工具栏palette不见了,如何把它找出来?
这个问题我找了所有的菜单才找到,在【Tools】-【CustomizeToolbars】点击打开,列表项里的【palette】选中即可,此外,这个窗口中还可以设计对齐的方式等等。
NO3:如何建立与数据库的关联?
详细建立:PowerDesigner建立与数据库的连接,以便生成数据库和从数据库生成到PD中。[Oracle10G版]
PowerDesigner建立与数据库的连接,以便生成数据库和从数据库生成到PD中。[SQLSERVER2005版]
NO4:域和数据项有何作用?
域和数据项的作用是为了复用而设定的,数据类型可以保持一致,比如不少表里都有经纬度,则可以定义两个通用的域,如图所示,点击【Model】-【Domains】出现如图所示,建了三个域,那么建表时可以复用,打开列的属性的时候就可以复用了,如果域的类型发生了改变,则该列的数据类型也发生改变。数据项作用类似于此。还有一些,比如主键递增ID
No.5如何生成主键的自定义增长列,SQLServer和Oracle数据分别是如何操作的?
SQLServer版本:http://www.cnblogs.com/netsql/archive/2010/05/19/1739481.html
Oracle版本:http://www.cnblogs.com/netsql/archive/2010/05/19/1739512.html
No.6NAME和CODE联动,如何取消?
要熟悉几个常用的菜单,MODEL,DATABASE,Tools,REPORT等等,在【Tools】下找到【GeneralOptions】如图所示:
NO7.如何实现字段的NAME和Comment属性互换?
http://www.cnblogs.com/netsql/archive/2010/05/24/1742734.html
还有一个,如果你只想生成的时候,把NAME自动更新到Comment列,是这样操作的:
NO.8:如何修改某个对象的命名规则,比如外键,比如主键,比如触发器等?
下面以主键为例,一般每个表都有一个主键,那主键的命名规则如何修改定义呢,
菜单:【Database】--【EditCurrentDBMS】,如图所示:
No.9:如何用PD生成测试数据,以便测试?
Powerdesigner中如何生成测试数据
No.10:如何把CODE的NAME中文也生成在脚本中,也就是列名后就是NAME的说明文字?
修改字段生成规则。要给每个字段都添加一个注释的话,如图所示:
NO.11:如何将数据库结构,表名,表的字段导出到Word中,或者生成HTML文件以便查看?
这个涉及到数据库的脚本中,也就是将表生成数据库文档,可以是HTML格式,也可以是DOC格式.如图所示:
如果需要添加数据类型,注释等更多的信息,右键,选择【layout】,选择你需要的显示的信息即可。
No.12:如何去除生成SQL时的双引号问题,双引号在Oracle中可以保证大小写,却异常麻烦?
生成SQL语句时,表名和字段名都是带双引号,这个在ORACLE中以后使用时都要带上""非常的麻烦,必须生成脚本时去除:
【Database】--【EditCurrentDBMS】,如图所示:
NO.13如何修改PD的显示样式?
设计PDM文档时,样式不一样,这个在哪里设置呢,如图所示,比如修改表的显示样式。
【Tools】--【Displaypreference】,
点击修改按钮,就可以修改表的样式了,包括字体大小,颜色,线的形状、阴影等等。
No.14如何去除表名,字段的长度限制?
当生成脚本时,有的表名或者列名莫名其妙的缩短了,这时因为限定了长度,这是把双刃剑,如果要强制表名或者字段名在某个范围内,这个作用刚好,如果不想限制,就需要修改那个限制的值了。
【Database】--【EditCurrentDBMS]--依次找到:Script\Objects\Table
No.15如何进行数据库的逆向工程?
如何进行数据库,比如ORACLE,SQLSERVER的逆向工程,将数据库导入到PD中
这是我平常遇到的几个问题,大家有什么问题,一起交流哦。
有一个问题问一下:有的时候,每个表都有一些默认字段,比如创建人,创建时间,修改时间,修改人,如何默认情况下添加每个表都有呢?