论坛首页 Java企业应用论坛

多个一对一可否用表的字段代替

浏览 1788 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2008-10-21   最后修改:2008-11-11

有这样一个问题,一道题目有多个选项(比如A,B,C),而每道题目的A,B,C 对于不同的分数,比如A,B,C分别是5,4,3分,而每个选项都有不同的分析,比如你选择A,它的分析是"选A的人。。。。",选择B,它的分析又是"选B的人。。。"。

所有的题目全部是单选题目,也就是每题你只能选择一项

数据库表的设计有两种方式:

第一种设计方式,分四个实体,Question,Choice,Score,Analyze,如下图

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

第二种方式,只分两个实体,Question和Choice

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

系统的ORM采用Hibernate,请大家分析哪种方式好,暂时不考虑系统的可扩充性?

问题是如果一个表有很多个一对一的关系,把它设计成表的字段好些还是采用OneToOne的方案,

我把此文发到了“领域建模”,不知道发对了没,我的这种是“数据库建模”把

  • 大小: 48.4 KB
  • 大小: 34 KB
   发表时间:2008-10-21  
第一个划分的太详细了,如果选择题的选项是固定的,那就没必要分一个表保存选项,可以当做题目中的一个属性,我还不明白这个选项分析表有什么作用?是映射题目选项的分数吗?
0 请登录后投票
   发表时间:2008-10-21  
选项分析表是根据的你的选择做出判断。
比如心理测试中一道题你选择“A”,就会取得分析字符串"你的心理极度健康",选“B”,就会取得相应的字符串"你的心理不健康",这些字符串都是varchar类型的,存储在数据库表Analyzer里面。
另外一对一的性能怎么样,请各位赐教
0 请登录后投票
   发表时间:2008-11-04  
这个问题在www.jdon.com有讨论,具体搜索里面的帖子,呵呵
实际上,
作为表的属性字段还是作为表的属性表由系统的可扩充性要求来决定。
结贴。。
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics