2

複数回答の質問を DB (MSSQL) に保存する必要がありますが、最善の方法を判断するのに苦労しています。問題を 1 つのテーブルに保存し、すべての回答を別のテーブルに保存し、正解を 3 つ目のテーブルに保存する必要がありますか? それらはすべて同じテーブルにある必要がありますか?

私はあなたのアイデアを聞きたいです

ありがとう

アミット

4

3 に答える 3

1

私はポディルスカに同意します。テーブル内の各エンティティ。回答のすべてまたは一部が「類型化」できる (つまり、「自由回答」ではない) 場合は、これを表の質問に関連付ける「類型化された回答」の表を追加します (誰かが適用できない「類型化された回答」を選択するのを防ぐため)。回答」はそれをテーブル「質問」に関連付けます。一部のレコード(または回答)に「類型化されていない」が含まれている場合は、「正しい」または「間違っている」を示すブール列でマークできます。お役に立てば幸いです。

于 2012-09-11T08:25:09.697 に答える
1

あなたの場合、私にとって最善の方法は、質問と回答を別々のテーブルに入れることです。質問に複数の回答があり、多くの質問で 1 つの回答を使用したい場合は、それが最善の方法です。特定の質問に適した回答の表も追加する必要があります。

このようにして、データベースにデータの冗長性がなくなります。

于 2012-09-11T07:54:28.823 に答える
1

各概念またはエンティティは、独自のテーブルにある必要があります。

  • 質問テーブルの質問
  • 正しいか間違っているかを示すブール値フィールドを持つ QuestionID を持つ Answer Table 内の Answers (Answers が複数の質問に属することができない場合)
于 2012-09-11T08:00:11.553 に答える