0
私のASP.netプロジェクトに関して少し問題があります。私のASP.netプロジェクトにはregister.aspx
,login.aspx
、default.aspx
というページがあります。複数のデータをASP.netのデータベースに書き込む
ちなみに、それらのユーザーから必要な情報をregister.aspxページのテキストボックスに入力し、ボタンをクリックすると、情報がデータベースに書き込まれます。要するに、私のプロジェクトはそれです。私の質問は - 私はチェックボックスリストを使って複数の選択肢を与え、チェックボックスリストで選択した項目をデータベース内のテーブルに書き、各項目のカンマをデータベースのテーブルの中に入れて書きたいと思います。
以下のコードを試しました。私はエラーを取得していないよ。しかし、それはテーブルの中でNULLフィールド(私は趣味と呼ばれる列を使用しています)として来ています。そして、同じレコードを2回記録していました。
String selectedItem = string.Empty;
foreach (ListItem item in CheckBoxList1.Items)
{
if (item.Selected)
{
string.Format(selectedItem, ",", item.Text);
}
}
if (selectedItem != string.Empty)
{
selectedItem = selectedItem.Substring(1);
}
それとも、 私は以下のようにコードを実行しようとすると、それだけで最初に選択を取ります。
for(int i=0;i<CheckBoxList1.Items.Count;i++)
{
if (CheckBoxList1.Items[i].Selected == true)
{
cmd.Parameters.Add("@Hobies", SqlDbType.VarChar).Value =
CheckBoxList1.Items[i].Text.ToString();
cmd.ExecuteNonQuery();
}
}
まず、データベースの正規化をよく読んで。複数の値をカンマで区切って同じフィールドに入力すると、最初の正規形に違反しています。 http://en.wikipedia.org/wiki/Database_normalization –