2011-08-01 8 views
2

C#とSQLデータベース(特にMS SQL Server Express)を使用して複数の値を格納する最良の方法についてアドバイスを探しています。私はテーブルAとBにデータを取得することができますが、フォーム2が記入されたときにデータベースに10ステップすべてを保存する方法がわかりません。C#で複数の値をSQLデータベースに保存する

アプリケーションが動作する方法は、ユーザーがフォーム1のコンボボックスからアイテムを選択することです。送信ボタンを押します。その後、テーブルAとテーブルBが更新されます。テーブルに値が設定されると、フォーム2が開き、ユーザーがデータを入力して送信してテーブルBに格納します。

フォーム2でわかるように、30個のラジオを作成する必要はありませんボタン、および22のテキストボックスフィールドを表Bに示します。どんな方向へのアドバイスをいただければ幸いです。

編集:私は質問が混乱していたことを知っています、私は自分自身を混乱させています!基本的には、一意のIDに関連する10のステップを保存したいだけです。だから私はID 1と言って質問をするとき、それはそのIDに関連する10のステップを示します。
のVisual Studio Proの2010
SQL Expressの2008
LINQをDBへのクエリのために:使用

Form 2

+0

疑問を呈する。たぶん、 "テーブルA"、 "フォーム2"、 "データ"、 "コンボボックス"の代わりに実際の例を使用してみてください。 –

+0

誰かがレンガの壁にぶつかるのを見るのと同じように、この質問は私が読んでいるのですか?より多くの文脈と詳細が必要です。あなたは私たちにテーブルスキーマを教えてくれますか? ORMはどうですか?何を試しましたか?あなたが試したときに何を言ったのですか? – CrazyDart

答えて

1

テーブルCを追加して回答を保存することができます。表B、表Bに関連するレコードを識別するために、テーブルCによって使用されるIDフィールドを有することになる

表B:

ID, ... 
1 , ... 
2 , ... 

表C

ID, questionID, Answer 
1 , 1   , "value" 
2 , 1   , "value" 
3 , 1   , "value" 
... 
10, 2   , "value" 
11, 2   , "value" 

questionIDフィールドはテーブルBとの関係であり、回答の順序は次のように決定できます。IDフィールド

+0

感謝の気持ちになりました。 – Dunwitch

1

フォーム2で見ることができるように、私は自分のフォームから各ステップ

のために30個のラジオ ボタンとテーブルBで22個のテキストボックスフィールドを作成する必要が想像できません表Bの5つのフィールドが必要(多分)のようです。

1) QuestionID (int, foreign key) 
2) Answer1 (n/a textbox) 
3) Answer2 (radiobutton selection) 
4) Answer3 (txt) 
5) Answer4 (txt) 

次に、質問のためのルックアップテーブルが必要です私はそれを誤読していない限り、これはデータベース設計の質問のようですが、C#/ Sql-server-2008の質問ではありません。

関連する問題