我正在尝试构建一个基本的测验应用程序,但我对当前创建两个表的表结构感到困惑question
,options
但我不确定是将它们分开还是应该将它们合并到一个表中。请建议我为我的测验应用程序提供更好的结构。
我的问题表 -
我的options
桌子——
还有一件事——目前没有为选项表设置主键,因为我也不确定。
我正在尝试构建一个基本的测验应用程序,但我对当前创建两个表的表结构感到困惑question
,options
但我不确定是将它们分开还是应该将它们合并到一个表中。请建议我为我的测验应用程序提供更好的结构。
我的问题表 -
我的options
桌子——
还有一件事——目前没有为选项表设置主键,因为我也不确定。
我会明确地将表格分开 - 它更有效并保持结构更清洁。您也可以使用外键。
但我认为这样做会更好:
表 1:(问题)
表 2:(选项)
所以你可以SELECT * FROM Options WHERE Question_ID = X
这实际上取决于您的测验的外观。如果您确定每个问题都是“从四个中选择一个” - 那么您可以制作一张表格,其中包含“好答案”、“第一个坏答案”、“第二个坏答案”、“第三个坏答案”列。这会更容易也更有效。
另一方面,为选项制作单独的表格将使您可以轻松地提出具有不同数量可能答案的问题