想知道从保存回答的角度来看,建立调查问卷模型的最佳方法是什么。因此,我假设保存它的理想方法应该是这样的表:
ID_pk
response_id
question_id
价值
因此,每个条目都是一个问题的答案。问题是,当我在这个表上搜索时,性能会很差。我想知道我是否需要在旁边创建另一个表来帮助我提高性能。有什么想法吗?
谢谢
发布于 2011-12-16 04:13:12
最好的方法取决于你需要多大的灵活性。你会有多项选择题吗?用于计算的纯数字questinos?对/错问题等。
对于我们来说,实现终极灵活性的方法具有以下结构:
表:调查
PK
的
表QuestionTypes
表问题
FK
的
表答案(仅包含多项选择题的答案)
PK
表结果
从Question)
,除非是多选题,否则为FK to otherwise)
然后是大量的编程逻辑来处理显示。
实际上,我们的实际解决方案更进一步,将问题分组到QuestionGroups中,这样类似的问题就可以放在一起,但这个简化的版本应该会给你一些想法。它相对复杂,但我见过专业的调查软件,甚至更复杂,但遵循类似的模式。这对我们来说也是非常好的。通过创建一个新的SurveyType,我们已经能够在多个场景中重用它。
发布于 2011-12-16 04:07:57
这个想法是,任何可以在一个表中复制的东西都应该拉出到另一个表中。
questions表的答案
所以,我会说想想你的调查问卷。想一想在db中会多次保存什么,然后从中进行规范化。
不要担心性能问题-标准化将带来更多的帮助而不是伤害。
https://stackoverflow.com/questions/8525885
复制相似问题