可先阅读
PowerDesigner15.1使用技巧(二)–如何找到官方资源
表的数据结构为树状结构的表示
该种关系称为递归关系。使用relationship自己指向自己即可。
实体可以通过联系(Relationship)相互关联。按照实体之间的数量对应关系,通常可以将联系分为:一对一联系(One to One),一对多联系(One to Many),多对多联系(Many to Many),递归联系(Recursive Relationship)以及标识关系(Identify Relationship)等。
树的基本名词:
- 根节点(度最大)
- 分支节点(度不为0)
- 叶子节点(度为0)
Data Type
cdm、ldm的实体不显示数据类型
定义不显示类型
Entity Properties -> Attributes -> Customize Columns and Filter -> Data Type去掉勾选
展示不显示类型
Tools -> Display Preference… -> Entity -> Data Types
和visio一样,在全局里设置,而不是单个属性里设置。
data type的定义
可以任意定义,比如某字段的数据类型叫abc也可以,只是会提示一下。
relationship
关系如何命名
relationship名字不能为空,也不能重复。一般把两个表的表名组合在一起。
比如teacher_student,见官文《Conceptual Diagram Basics》章节。
设置外键
在relationship里。
cdm一般没有,ldm才有。
线的显示
感觉pd的关系线的位置自动适配不好,不能自动对齐,总是要手动调整。
Identifier
Identifier_1的含义
看官方文档。应该就是key
去掉显示Identifier_1
Tools -> Display Preference... -> Entity -> Identifiers
继承
继承摆放
继承最好父类在上,子类在下。我试过左右放置,很难理解。
两个子类,如何用同一个继承
双击inheritance -> more -> children -> add children -> 打勾 确定
继承时字段的显示
逻辑数据模型用继承,生成物理数据模型时可以只生成子类,不会生成父类的表。
见http://www.cnblogs.com/studyzy/archive/2011/08/16/2140675.html
其他
Data Items
概念模型才有,ldm没有。每个字段名只能出现一次。也就是说同样的字段名表示同样的含义。
比如A表有字段T1,B表也有字段T1,你把B的T1改名为T2,A表会自动跟着改!
字段里的 去掉显示
Tools -> Display Preference... -> Entity -> Mandatory
默认黑线的作用
我觉得用来区分模块很好
网格线: http://www.cnblogs.com/kissdodog/p/4140244.html 是指点点线而已
cdm与ldm的不同
- 都有entity和relationship,但是cdm只有relationship,而ldm分为relationship和n-n relationship
- entity都可以设计表名和字段
- 都有inheritance
- entity加入字段后,cdm会在左侧生成Data Items,而ldm不会
- Data Items如果字段的name一样,不会合并;code一样,会自动合并
- 已存在的Data Items,只需要输入code,其他会自动生成
- 字段删掉了,Data Items里不会删掉(感觉是bug)
- 继承在cdm里没任何限制,在ldm里严格限制
- cdm和ldm里的entity是不能互相拷贝的,字段也是
- note可以互相拷贝,颜色也是一样
- cdm有association,ldm没有
了解更多association
使用cdm与ldm的正确流程
- 先设计cdm,并且评审通过
- 根据cdm生成ldm,在此基础上增加设计
- 此时若发现cdm要修改,只能在ldm上直接修改,原cdm不动。ldm里通过颜色是可以区分cdm与ldm元素的
2015.5.14