【问题标题】:Allow admin to create a new column?允许管理员创建新列?
【发布时间】:2012-04-20 22:06:21
【问题描述】:

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

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

我无法考虑最好的方法。

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

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

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

【问题讨论】:

    标签: c# asp.net-mvc-3 database-design


    【解决方案1】:

    这不是很规范。

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

    【讨论】:

    • 你会建议另一张桌子来存放问题吗?然后,当用户离开评论时,会显示每个问题以及一个文本框,然后当他们提交时,将每个问题及其答案保存在问题/答案表中,该表还包含一个指向该评论的 ID?
    【解决方案2】:

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

    【讨论】:

      【解决方案3】:

      您需要有一个表来存储Questions,并有一个单独的表来存储Answers。然后Answers 表可以有一个外键指向它正在回答的Questions 中的记录。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-11-07
        • 2018-02-04
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多