Mysql 我的SQL表结构正确吗?

Mysql 我的SQL表结构正确吗?,mysql,sql,Mysql,Sql,我有一个名为Answer的表,其中存储了不同类型问题的答案,如googleforms问题(简短答案、段落等)。答案表具有以下结构: id - integer - Primary Key question_id - integer - Foreign Key value - text 对于简单类型的问题,此表就足够了,因为它们只存储特定问题的答案值。然而,我有一个网格类型的问题,我必须为网格中的特定行存储一个答案(或多个答案),因此我必须使用数据透视表来存储保持一对“row\u id-answe

我有一个名为Answer的表,其中存储了不同类型问题的答案,如googleforms问题(简短答案、段落等)。答案表具有以下结构:

id - integer - Primary Key
question_id - integer - Foreign Key
value - text

对于简单类型的问题,此表就足够了,因为它们只存储特定问题的答案值。然而,我有一个网格类型的问题,我必须为网格中的特定行存储一个答案(或多个答案),因此我必须使用数据透视表来存储保持一对“row\u id-answer\u id”的关系答案行。所以我的问题是:把这个关系和其他类型的问题放在同一个表中是正确的吗?或者我应该为每种问题类型使用不同的答案表吗?

通常最好用一种模式来描述您的表,该模式实际上是SQL,可以用于测试工具。您准备好使用类似JSON列(MySQL 5.7+)的内容了吗?还是只在该
文本
字段中存储JSON数据?这是适应未来未知情况的一个好方法,但缺点是它不是关系数据,这可能是一个问题。
value
是一个非常模糊的列名称。它的值是多少?我将存储数据表单输入(文本、文本区域、选择…)。我决定将所有问题的答案统一在同一个表中,独立于问题的类型,使用这种类型。这是一个糟糕的解决方案吗?通常最好用一个实际上是SQL的模式来描述您的表,并且可以在测试工具上使用。您准备好使用JSON列(MySQL 5.7+)之类的东西了吗?还是只在
文本
字段中存储JSON数据?这是适应未来未知情况的一个好方法,但缺点是它不是关系数据,这可能是一个问题。
value
是一个非常模糊的列名称。它的值是多少?我将存储数据表单输入(文本、文本区域、选择…)。我决定将所有问题的答案统一在同一个表中,独立于问题的类型,使用这种类型。这是一个糟糕的解决方案吗?