powerdesigner 类的继承关系
在开发中,总是会面对部分相同的实体类这种情况的。那么,我们需要在powerdesigner 中就直接关联好这种关系。但是,怎么做呢?
实现方式:
- Concrete Table Inheritance(具体表继承)
- Single Table Inheritance(单表继承)
- Class Table Inheritance (类表继承)
比如,教师与学生的设计关系来讲。有相同的姓名,性别,年龄等等一系列的相同属性。也有不同的属性,教师的工作,学生的学号等等。那么,我们创建一个继承的关系表。如图:
接下来就是设置继承关系,生成相应的表了。
1.具体表继承:
顾名思义,就是不建立父表,只创建子表。每个子表中继承于父表中的属性。如图:
怎么创建呢:在继承关系上,设置Generation面板下的Generation mode 。
- 取消勾选 :生成父类 generation parent
- 勾选: 生成子类 generation children
- 单选: 生成所有字段 inherit all attributes
2.单表继承:
单表继承就是既然有相同字段,那么就把这些字段放到同一张表中,减少了区分到底那张表的数据。直接在一张表中操作。
操作:
- 勾选: 生成父类 generation parent
- 取消勾选: 生成子类 generation children
3.类表继承:
按照类表进行创建,父表子表都创建。在子表中设置该子表的主键为父表的外键。在PowerDesigner 中,对于继承节点的属性,允许生成父表和子表。
操作:
- 勾选:生成父类 generation parent
- 勾选:生成子类 generation children
- 单选:inheria only primary attributes
最后发现,student 写错了。