none
c# da datagridview den satır silme ve Sql den silinmesi RRS feed

  • Soru

  • nerde hata yapıyorum aceba ?

    HATA('Nesne başvurusu bir nesnenin örneğine ayarlanmadı.')

    for (int c =1; c<11; c++)
                    {
                        SqlConnection connection = new SqlConnection(baglanma);
                        SqlCommand cmdd = new SqlCommand("delete from LISTE" + c.ToString() +" where num='" +dataGridView1.CurrentRow.Cells[0].Value.ToString() +"'", connection);
                        connection.Open();
                        cmdd.ExecuteNonQuery();
                        veriler("select * from LISTE"+c.ToString());
                        connection.Close();
                        connection.Dispose();
                    }



    • Düzenleyen gomer_222 5 Nisan 2019 Cuma 17:39
    5 Nisan 2019 Cuma 17:37

Tüm Yanıtlar

  • Kızma bana ama burada doğru yaptığın bir şey yok.

    1-For içinde bağlantı açıp kapatıyorsun.

    2-Using desen hak getire.

    3-Parametre desen oda yok.SQL injection açığı var bu kodda.

    4-Datagride satır sütun girişiyorsun datagridi sadece verileri göstermek için kullanmalısın datasource özelliğini kullan.(Datagrid.Datasource)

    Hatanın sebebide bir yerde null bir obje var ve sen bu objenin property yada bir methoduna erişmeye çalışıyorsun.Bir miktar düzelttim sanırım kodu :

    using (SqlConnection connection = new SqlConnection(baglanma))
                using (SqlCommand cmdd = new SqlCommand("delete from LISTE@p1 where num=@p2", connection))
                {
                    connection.Open();
                    
                    for (int c = 1; c < 11; c++)
                    {
                        cmdd.Parameters.AddWithValue("@p1", c);
                        cmdd.Parameters.AddWithValue("@p2", dataGridView1.CurrentRow.Cells[0].Value.ToString());
                        cmdd.ExecuteNonQuery();
                    }
                    connection.Close();
    
    
                }

    5 Nisan 2019 Cuma 18:21
  • böyle böyle öğrenicez işte. eyvallah deniyorum şimdi
    5 Nisan 2019 Cuma 18:46
  • teşekkürler oldu.
    5 Nisan 2019 Cuma 19:02