`

Powerdesigner技巧(一) :活用domain,使表字段数据类型一致

阅读更多

Powerdesigner

1       表设计

1.1    命名规范

       普通表:【子模块名_表名】

              例子:SM_RESOURCE 表示“系统管理模块资源表”

       关系表:【子模块名_REL_A_B名】

              例子:SM_REL_ROLE_RESOURCE 表示“系统管理模块角色与资源关系表”

       主键:

              优先 模式1:普通表【表名_ID

                            关系表【REL_ID

              模式2:全部用【ID】表示

1.2    字段规范

建立Domain来定义常用数据类型。

Powerdesignerdomain如同自定义数据类型,比如定义一个domain表示表标识,如下:

1.2.1   【例】domain

(图1.2.1


如上图,一个表示表标识的domain就建立好了,我们把这个domain投入使用,如下图:

(图2

我们打开一个表,设置主键的attributes,在Domain中选择刚刚我们创建的“标识ID”,这样,主键的Data Type就和domain中定义的一致了为Number (8)。如果我们把所有的表中相同的字段都用domain定意数据类型,那么我们以后只要有修改,不用逐一在每个表中修改,而只要改Domain就可以达到“牵一发动全身”了。


 

2       模型转换流程

2.1    概念模型(CDM) To 物理模型(PDM)

2.1.1   模型合并

如果当前CDM已经生成了PDM,那么再次生成PDM的时候,会有个模型更改合并界面。

我们可以对哪些新生成的PDM和以生成的PDM的不一致的元素,在截面上会有感叹号提示,如图:

(图3

一般来说,选择全部修改。当然也可以根据具体情况选择局部更新。

如上图红色标记处选择全选。

2.2    物理模型(PDM) To SQLScript

2.2.1   PDM TO sqlscript 问题总结

2.2.1.1             Constraint name uniqueness

这个问题是因为powerdesignerCDMPDM时,生成的Constraint name 重复导致的。

原因:Constraint name必须是一定长度之内的,而powerdesignerCDMPDM时,Constraint name的命名规则是【FK_A名(简写)_Reference_B名(简写)

如:FK_SM_REL_O_FK_REGION_SM_REGIO

 

(图4

8
2
分享到:
评论
1 楼 zgqynx 2010-03-26  
不错,正好用到!

相关推荐

Global site tag (gtag.js) - Google Analytics