2017-10-09 24 views
0

私は登録ページを持っています。このページのデータをデータベースに挿入します。このページにはリストボックスがあります。私は、リストボックス内の1つまたは複数のデータを選択し、データベースに正しく挿入させたいと思っています。たとえば、ユーザーが好きなスポーツ(リストボックス)でバスケットボール、フットボール、バレーボールを選んだとします。私のデータベースには、あなたの好きなスポーツの列にバスケットボール、サッカー、バレーボールがあるはずです。私は伝えたいと思う。私の英語はあまりよくないので。ごめんなさい。リストボックスに複数のデータをデータベースに挿入する方法

これはページです:[1]:https://i.stack.imgur.com/G95dO.png

これらのコードが動作していません。私は何をすべきか?

私のコードは:

protected void btnKayitEt_Click(object sender, EventArgs e) 
     { 
      using (SqlConnection conn = new SqlConnection(@"Data Source=.;Initial Catalog=Spordeneme;User ID=sa;Password=123456")) 
      { 
       try 
       { 
        conn.Open(); 
        SqlCommand komut = new SqlCommand("Insert into Kullanici (Ad,Soyad,Cinsiyet,Email,Sifre,SifreTekrar,Il,Ilce) Values (@ad,@soyad,@cinsiyet,@email,@sifre,@sifretekrar,@il,@ilce)",conn); 
        komut.Parameters.AddWithValue("@ad",txtAdi.Text); 
        komut.Parameters.AddWithValue("@soyad",txtSoyAdi); 
        komut.Parameters.AddWithValue("@cinsiyet", cnsyt.SelectedItem.Value); 
        komut.Parameters.AddWithValue("@email", txtEmaili.Text); 
        komut.Parameters.AddWithValue("@sifre", txtSifresi.Text); 
        komut.Parameters.AddWithValue("@sifretekrar", txtSifreTekrari.Text); 
        komut.Parameters.AddWithValue("@il", ddlil.SelectedItem.Value); 
        komut.Parameters.AddWithValue("@ilce", ddlilce.SelectedItem.Value); 
        for (int i = 0; i < lbspor.Items.Count; i++) 
        { 
         komut.CommandText = "insert into Kullanici (FavoriSporlar) values (@favorispor)"; 
         komut.Parameters.AddWithValue("@favorispor", lbspor.Items[i].ToString().Trim()); 
         komut.ExecuteNonQuery(); 
        } 
        komut.ExecuteNonQuery(); 
       } 
       catch 
       { 
        lbl1.Text = "Hata Oluştu, kaydedilmedi"; 
       } 
       finally 
       { 
        conn.Close(); 
       } 
      }`enter code here` 
     } 

答えて

0

お試し{..}キャッチ(例外例){...}を追加し、 "EX" 変数にエラーメッセージが表示されるはずです。主な問題は、ループ内のコードで特定されます。

+0

私はしていたエラーは "列 'cinsiyet'、テーブル 'Spordeneme.dbo.Kullanici'にNULL値を挿入できません;列はNULLを許可しませんINSERTは失敗します。私はヌル値を入力することはできません。私は今どうすればいい? – Prooff

+0

2つの解決策があります。最初の解決策はNULLを許可するために "cinsiyet"列を編集することです。 2番目のソリューションは、あなたがチェックする必要がありますkomut.Parameters.AddWithValue( "@ cinsiyet"、cnsyt.SelectedItem.Value == Null?String.Empty:cnsyt.SelectedItem.Value) – ndinhdat

+0

私は最初の解決策をして、データ。私は決してnull値を入力しませんでした。私は2番目の解決を申し訳ありませんが分かりません。 – Prooff