我需要创建一个调查,其中答案存储在数据库中.我只是想知道在数据库中实现这个的最佳方法是什么,特别是所需的表.调查包含不同类型的问题.例如:注释的文本字段,多项选择题以及可能包含多个答案的问题(即检查所有适用的答案).
我想出了两个可能的解决方案:
创建一个包含每个调查提交答案的巨型表格.每列将对应于调查的答案.即SurveyID,Answer1,Answer2,Answer3
我不认为这是最好的方法,因为在这项调查中有很多问题,如果调查要改变,似乎不是很灵活.
我想到的另一件事是创建一个问题表和答案表.问题表将包含调查的所有问题.答案表将包含调查中的各个答案,每行都与一个问题相关联.
一个简单的例子:
tblSurvey:SurveyID
tblQuestion:QuestionID,SurveyID,QuestionType,Question
tblAnswer:AnswerID,UserID,QuestionID,Answer
tblUser:UserID,UserName
我的问题是,可能有大量的答案会使答案表变得非常庞大.在性能方面,我不确定它是如此之大.
我很感激任何想法和建议.