0

我想要做的是允许管理员创建问卷。每次用户为产品撰写评论时,他们还必须填写一份问卷。这是一个教育模拟。

我目前正在使用 Visual Studio,并且正在用 C# 开发一个 ASP.NET MVC3 网站。我还使用/拥有 SQL Server 2008 和 SQL Management Studio。

我很难考虑最好的方法来做到这一点。

现在我的解决方案是说“你最多可以问 10 个问题”,然后在我的数据库中有一个“问题”表,并存储每个评论的所有答案,每个评论有 10 个“答案”列。

更好的是,如果我能以某种方式允许管理员提出他们想要的尽可能多的问题,并根据需要向我的数据库表中添加更多列。有没有办法做到这一点?

或者有没有更好的方法来设计我的数据库?

4

3 回答 3

2

只需给自己一个Answers具有外键的子表即可Questions。然后,您可以根据需要获得尽可能多的答案。

于 2012-04-20T22:08:27.327 回答
2

这不是很正常化。

您应该有一个表格,其中每个问题/答案对都有一条记录。

于 2012-04-20T22:08:40.177 回答
2

您将需要一个表来存储Questions. 和一个单独的表来存储Answers. 然后,该表可以在其回答Answers中具有记录的外键。Questions

于 2012-04-20T22:09:16.973 回答