我正在考虑如何为即将开展的项目设置数据库。该项目是一个单页内部公司测验应用程序。用户回答问题,输入他们的姓名和电子邮件,如果他们完全正确,他们就会进入奖品的“抽奖”。
每个月都会发布4组问题。我想跟踪所有用户的所有问题的所有答案,以便我可以在管理部分生成该数据。每个月有5个问题,每个问题都是多项选择。
我的第一个想法是为每个问题制作一个列,并将它们命名为:M1Q1,M1Q2,M1Q2,然后是第二个月M2Q1等。这是每个用户20列,似乎没必要。 我应该为每个月存储一系列答案吗?或者其他任何方式?
这里有一个类似的问题:MySql database design for a quiz但我不需要存储问题,我只需要保存每个用户的问题。我正在使用rails,所以我可以访问域逻辑等,而不是上面的问题。
感谢。
答案 0 :(得分:1)
您可以使用两个表格。一个有四列:
userid month question answer
1 1 1 A
1 1 2 C
1 1 3 B
etc...
主键是(用户,月份,问题)。
userid是用户表的外键,用户表中存储有关用户的信息。