我有一个带有文本字段的页面,用户可以输入数据(在我们的情况下,这些是问题)。
它看起来像这样:
___________________________________
| Enter your question... | +
|___________________________________|
如果用户点击“+”,则会出现另一个字段:
___________________________________
| User's first Question.. |
|___________________________________|
___________________________________
| Enter your next question... | +
|___________________________________|
......等等。这些问题中的每一个都需要存储在数据库中,但问题的数量是动态的(让我们说为了论证我们将最大数量限制为100个问题),实现这一目标的最佳方法是什么? 我应该为每个问题创建一个新列吗?这不会真的污染数据库吗?理想情况下,我的数据库中只有一列名为“问题”,只是将所有问题存储在一列中。这甚至可能吗?
这样的事情:
++++++++++++++++++++++++++++++++++++++++++++++
+ id | Questions +
++++++++++++++++++++++++++++++++++++++++++++++
+ 1 | My Question 1,MyQuestion, +
+ 2 | Another Question, And Another one, +
+ . | ...... +
++++++++++++++++++++++++++++++++++++++++++++++
的 的 *编辑* 为了清楚起见 - 我需要能够在以后检索每个问题,并能够单独隔离每个问题(例如,作为PHP数组)。
的 的 * EDIT2 *
另外,因为问题集是针对每个用户的,所以问题包需要保持在一行中。即我无法在自己的行中添加问题。在上面的示例中,ID1是单个用户,My Question 1
和MyQuestion
是该用户的问题。
答案 0 :(得分:1)
我认为最简单的方法是将数据库表格设为:
++++++++++++++++++++++++++++++++++++++++++++++
+ id | user_id | question +
++++++++++++++++++++++++++++++++++++++++++++++
所以用户会有多少问题并不重要。
答案 1 :(得分:0)
在这种情况下,您可以使用基于文档的NOSQL解决方案,如MongoDB,或创建一个包含id,user_id和问题的表。
答案 2 :(得分:0)
您可以尝试的一个选项是通过创建另一个表来拆分它。所以要清楚一个用户表和另一个用于提问的表。
在表用户中,您可以拥有user_id和user用户名,在表格问题中,您可以拥有unique_id,问题,然后是引用问题用户的外键约束。
通过这种方式,您可以单独或全部访问它们。