NutzCN Logo
问答 关于把继承关系实现到数据库表设计后,nutz的dao操作是否会变得复杂的疑问
发布于 2416天前 作者 qq_7fafbecc 1539 次浏览 复制 上一个帖子 下一个帖子
标签:

实体:
user:{用户ID,密码,中文名}
doctor:{科室,职称}----继承user
nurse:{病区,护士长标识}----继承user

数据库表:
USER:{用户ID,密码,中文名}
DOCTOR:{用户ID,科室,职称}
NURSE:{用户ID,病区,护士长标识}

这样就把实体类的继承,数据库表的映射对应起来。
那么在Nutz的各种实体操作,例如dao.query(doctor)和dao.insert(nurse)时候会方面吗?
毕竟实体类有了继承关系,而且数据库表也是按继承关系建立的。
会使以后dao.insert、dao.update、dao.query等NUTZ操作变麻烦吗?

或者第二种思路:
把doctor和nurse,无论表和java对象,都合成一个user
{用户ID,密码,中文名,用户类型,科室,职称,病区,护士长标识}
这样就一个对象就OK了,dao.xxx操作也方便,但是表中会产生大量的null

老数据库是目前是DOCTOR + NURSE表的模式,怎么改造比较合理?

3 回复

很困惑,是否要合表,又怕dao操作起来麻烦,又怕数据冗余,还要考虑以后维护方便,咋改造?还是不动为妙?

额, 数据表就不要用继承关系了吧

那合成一张表?
USER:
{用户ID,密码,中文名,用户类型,科室,职称,病区,护士长标识}

维持现状?
DOCTOR:{用户ID,密码,中文名,科室,职称}
NURSE:{用户ID,密码,中文名,病区,护士长标识}

添加回复
请先登陆
回到顶部