问卷的数据库设计

时间:2013-09-30 18:52:42

标签: mysql sql database-design database-schema

我有一个包含100-200个主题的数据库,每个主题有20个问题。每个问题可以有多个参数(最多7个),可以分为多个组(最多20个)。将问题分成集合是手动完成的。我必须将它存储到数据库中。我正在考虑以下几点:

制作一个表格,用于存储具有以下架构的问题: topic_id,question_id,question,sets,parameters,correct_answer

设置列将像1,2,3,4一样存储.. 参数列将存储为a,b,c,d ..

之前我没有使用多个值字段,我不知道它是否可行,因为我在某些时候会有超过4000行。

1 个答案:

答案 0 :(得分:0)

逗号分隔值字段很难在选择和维护中使用。相反,最好使用多个表。具体来说,您将有一个QuestionSets表(设置该问题属于)和QuestionParameter表。

问题会有

  • question_id
  • topic_id,
  • 问题
  • 回答(是多项选择吗?)

然后你将拥有带有ID和其他值的集合/参数。映射表将引用两个ID

QuestionSets
question_id | set_id