【发布时间】:2013-02-01 05:27:26
【问题描述】:
嘿,我为一个困扰我很长一段时间的问题而摸不着头脑。
基本上我有一个很长的在线调查问卷,我不太确定应该如何设计 mySQL 数据库来存储答案。
所以这是我的问题:
- 我应该为每人(参与调查的人)创建 1 行吗?
- 有很多父/子问题(例如,如果回答是,那么 回答下列问题,否则忽略)。如何处理它们?
- 对于一个问题,此人可以回答多个答案。如何 处理它们?
我想到的是创建一个表格,每列都是问题。如果有一个与调查者无关的父母/孩子问题,它将被留下blank。对于可以有多个答案的问题,我将创建n 列(其中n 代表可能答案的数量)。
你怎么看?这是否合适或有更好的方法来设计数据库。
谢谢
【问题讨论】:
-
您需要研究关系数据库设计和数据库规范化。不要只是把所有东西都扔到一张桌子上,否则你会做噩梦。
-
这是一个非常适合 nosql 数据库、mapreduce 和函数式编程的候选者;)
-
对于 RDBMS,您正在做的事情被称为“一个大电子表格”,被认为是一种不好的方法。 youtube.com/watch?v=uFLRc6y_O3s
标签: database-design