2012-04-20 8 views
0

は、管理者がアンケートを作成することができます。 ユーザーが製品のレビューを書くたびに、アンケートにも記入する必要があります。これは教育シミュレーションのためのものです。管理者は新しい列を作成できますか?私がやろうとしている何

私は現在Visual Studioを使用していますが、ASP.NET MVC3 WebサイトをC#で開発しています。 私はSQL Server 2008とSQL Management Studioも使用しています。

私はこれを行うための最良の方法について考えていません。

今すぐ私の解決策は「あなたは最大10の質問を聞くことができる」と言い、データベースに「質問」テーブルを持ち、すべての回答を各レビューに保存し、レビューごとに10個の「回答」列を持つことです。

管理者が何らかの理由で質問をして、必要に応じてデータベーステーブルに列を追加することができるのであれば、もっとうまくいくでしょう。これを行う方法はありますか?

それとも私のデータベースを設計するためのより良い方法はありますか?

答えて

2

非常に正規化されていません。

各質問/回答のペアごとに1つのレコードがあるテーブルが必要です。

+0

あなたが質問を保持する別のテーブルを提案しますか?そして、ときに、ユーザーは、テキストボックスと一緒に、各質問レビュー表示を残し、その後、彼らはまた、それがためのレビューに戻って指すIDが含まれている各質問と質問/回答テーブルでその答えを保存する際に提出しますか? – Johannes

2

Questionsへの外部キーを持つ子テーブルAnswersを自分に与えてください。それからあなたはあなたが望むだけ多くの答えを持つことができます。

2

Questionsを格納するテーブルと、Answersを格納するテーブルが必要です。 Answers表には、それが答えだQuestionsにレコードへの外部キーを持つことができます。

関連する問題