【发布时间】:2016-03-28 04:05:45
【问题描述】:
我有一个项目,我需要记录一份包含 50 多个问题的问卷的答案。每个问题都与数字 1 到 5 相关联。因此,填写的每份问卷的数据类似于
Username : "Bob",
"Question 1" : 1,
"Question 2" : 1,
"Question 3" : 5,
.
.
.
"Question N" : 2
向每个人提出相同的问题。我想知道这种情况下正确的数据库设计是什么。我做一张像
Questionaire_Answers
---------------------------------------------------------------------------
userid | Quesiton_1_Answer | .... | Question_N_Answer
或者有什么更好的方法?我是否使用巨大的 varchar 列对信息进行序列化,例如
Questionaire_Answers
-------------------------------------------------------------------------
userid | Question_Answers
--------------------------------------------------------------------------
1238 | "Question1->1,Question2->1,Question3->5,...QuestionN->2"
或者我该怎么办?
【问题讨论】:
-
这些设计都不正确。正确的数据库设计可能是....只需使用 SurveyMonkey。
-
@Nick.McDermaid Survey Monkey 是否有办法为每个调查分配个人用户名和密码等?我打算在 ASP.NET 中进行此操作,因为它需要随着时间的推移进行高度定制。
-
可以,但您可能需要为此付费。考虑什么是最好的利用你的时间 - 自定义编写,维护它并将其托管在某个地方..你仍然必须在另一边写出报告。或者付钱给Survey Monkey(我不为他们工作,我只是认为人们在不需要时定制构建东西!)
标签: sql sql-server tsql database-design