2011-01-14 4 views
1

データベースを使用する単純なアプリケーションを作成します。私はそれをどのように構造化するかについていくつかの指針が必要かもしれません。質問と回答を使ってデータベースを構成する方法は?

質問プログラムを作成します。私が心に留めているのは、質問

  • 質問
  • のカテゴリで質問

  • 一つのテーブルのdifficulityの一つのテーブル と

    • 一つのテーブルしかし、私は答えを何をしますか?彼らを質問表に別々の列として持っていますか?

      それぞれの質問には、そのうちの1つだけが正しい答えが5つあります。

  • +0

    のための答えをソートするために使用できる番号ですテーブルは、単一のオブジェクトに関するすべての情報をまとめて保存する必要があります...質問テーブルではなく、独自のテーブルに追加する必要がある質問難易度に関する追加情報はありますか?あなたは難易度とカテゴリがルックアップテーブルであり、質問テーブルにFKを保存するだけだと言っていますか? – Leslie

    +1

    はい、質問表の外部キーになります。なぜ私は自分のライティングを繰り返しますか?簡単、中、難しい500問で難しい?カテゴリについても同じですから、私の答えはあなたの最後の質問にはいります。 – LuckyLuke

    答えて

    3

    回答テーブル。プライマリキーは、回答IDが(a、b、c、d、e)とすることができる(質問ID、回答ID)とすることができます。その他のフィールドは適合していると見なされ、correct_answerバイナリフィールドも含まれています。このフィールドは正しい質問に対して1です。 1つのテーブル内のすべてのあなたの質問のデータを保持しないのはなぜ

    +0

    ryebr3adに詳細な迅速かつ詳細な回答をありがとうございました。 – LuckyLuke

    +4

    私の喜び。仕事でやるべきことは他にありません。 – ryebr3ad

    2

    questionsテーブル

    +0

    すぐに返信いただきありがとうございますNishant :) – LuckyLuke

    +0

    @アンドレアスヨハネセン歓迎 – Nishant

    1

    の主キーを指す外部キーでanswersテーブルをお持ちですか?次のようなものがあります。
    question_id | category_id | difficulty | correct_answer | question_text
    ここで、category_idは「カテゴリ」テーブルの外部キーであり、correct_answerは質問テーブルの外部キーです。

    回答については

    、あなたが
    answer_id | question_id | answer_text | answer_order
    質問IDのような何かを行うことができますが、質問表を指す外部キーである - その答えの順序は、あなたが決めるとき各質問

    関連する問題