首页 新闻 会员 周边 捐助

泛化类对应的数据库如何设计?

0
悬赏园豆:10 [已解决问题] 解决于 2009-04-09 10:03

系统中,如果某个类被多层泛化,对应的数据库该如何设计?

是每个类一张表, 还是用一张表与之对应,没有属性与某个字段对应的,就空着?

 如有两个类:

class a

{

  public int a1;

    public int a2;

}

 

class b: a

{

  public b1;

}

在设计数据库时,是该做成:

table1

a1, a2, b1, type

 

还是该做成:

table1

a1, a2

 

table2

a1, a2, b1

 

像这样的案例,有哪些解决方案?

Gene Li的主页 Gene Li | 初学一级 | 园豆:145
提问于:2009-04-08 16:18
< >
分享
最佳答案
0

既然你写了

class b : a

{

  public b1;

}

那么我认为 b1 应该是对象 a 的一个特例的属性。

如果为了今后扩展对象 a 的其他特例的需要,应该把 b1 单独放到一张表中。

同时,我觉得脱离开对象 a 的业务含义来谈继承,实在是不好做解决方案。

Launcher | 高人七级 |园豆:45050 | 2009-04-08 22:51
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册