C# DATAGRİDVİEW ÜZERİNDEN VERİ GÜNCELLEME – Ahmet Cansever
Cuma , 28 Temmuz 2017
Anasayfa » C# » C# DATAGRİDVİEW ÜZERİNDEN VERİ GÜNCELLEME

C# DATAGRİDVİEW ÜZERİNDEN VERİ GÜNCELLEME

Bazı durumlarda veritabanındaki verilerin datagridview üzerinden güncellenmesi veya eklenebilmesi istenebilir. Bu örneğimizde SQL Server da bulunan veritabanımıza bağlantı kurup CommandBuilder nesnesi ile datagridview üzerinden güncelleme işlemini gerçekleştireceğiz.

Öncelikle kullanacağımız veri tabanı ve tablosunu oluşturalım. Veritabanımızın ismi “sirket” tablomuzun adı “musteriler” olacak.

Daha sonra C# formumuzu aşağıdaki şekilde oluşturalım.

Formumuzu oluşturduktan sonra kodları yazmaya başlayacağız. Yazacağımız kodları kısaca açıklamamız gerekirse öncelikli olarak Form yüklendiğinde “müşteriler” tablosundaki verilerin datagridview‘ de görüntülenmesini sağlayacağız. “GÜNCELLE” butonuna ise yazacağımız kodlarla ise datagridview üzerinde herhangi bir değişiklik yaptığımızda veya kayıt eklendiğinde bu kayıtların veritabanında güncellenmesini sağlayacağız.

Kodları aşağıdaki şekilde yazıp programı çalıştıralım.

satırını eklemeyi unutmayalım.

2. kayıtta bulunan Ali Er isimli müşterinin Soyadını Erşahin Şehrini de Malatya olarak değiştirelim. Güncelle butonuna bastığımızda;

Kaydın yukarıda görüldüğü gibi değiştiğini göreceksiniz. Dilerseniz SQL Server üzerinde de kontrolünü yaparak kaydın değiştiğini görüntüleyebilirsiniz.

Hakkında admin

26 Yorumlar

  1. Bunu sql değil de OleDb ile nasıl yapabilirim?

  2. hocam ben yazıyorum güncellendi de diyor ama databasede değişmiyor yinede

  3. Gökhan ZARİÇ

    visual studio 2015 de bu projejde güncelle butonun bastığımda

    da.Update(ds, “musteriler”);

    komutta hata alıyorum. veri tabanı sağlam diğer projem calısıyor ama burda ne sorun olduğunu çözüm bulamadım yardımcı olabilirmisiz

  4. Arkadaşlar eğer ki yapamayan olursa bana mail adresimden ulaşabilirsiniz yabancı forumlara bakarak hallettim sorunu datagrid üzerinden güncelleme yapabiliyorum.
    mail adresim: mucahit_yilmaz@outlook.com

  5. private void button1_Click(object sender, EventArgs e)
    {
    con.Ope();
    dt = new DataTable();
    cmdb = new SqlCommandBuilder(da);
    da.Update(ds, “musteriler”);
    MessageBox.Show(“Kayıt güncellendi”);
    }

    bu kısmı bu şekilde düzenledim ve her seferinde kayıt güncellendi uyarısı veriyor. fakat programı kapattım açtım ve veriler yerinde yoktu yani veritabanına kaydetmiyor.

    • Merhaba. Herhangi bir sorun olmaması gerekiyor. Veritabanı ismi ve Tablo isminini doğru yazıp yazmadığınızı tekrar kontrol edin.

      • Yok hocam hepsi doğru veritabanı olarak sqlite kullanıyorum ve dataset yerine datatable kullanıyorum. Bağlantı da sıkıntı olmuyor zaten form1 load olunca veritabanından verileri çekip datagride atıyor ve değişiklik yapıp güncelle deyince olumlu uyarı veriyor ama veritabanına kaydetmiyor. Pc başına geçince uygulamayı upload edebilirim

  6. Bir kere güncellemeden sonra ikinci defa güncelleme yapılamıyor maalesef ki. Sorunu çözdünüz mü acaba ?

  7. teşekkür ediyorum hocam

  8. hocam aynı işlemleri yapınca bende Tutarlılık ihlali: UpdateCommand, beklenen 1 kaydın 0 kaydını etkiledi. hatası alıyorum. tabloda primary key mevcut, ayrıca o sütunu readonly=true yaptım.

    • neden reaonly (sadece okunabilir) yaptınız.

    • private void button1_Click(object sender, EventArgs e)
      {
      ds=new DataSet();
      con.Open();
      cmdb = new SqlCommandBuilder(da);
      da.Update(ds, “musteriler”);
      MessageBox.Show(“Kayıt güncellendi”);
      con.Cose();
      }

      birde böyle deneyin.

  9. Hocam Bunu Acces Veritabanı için nasıl yapabilirim. Yardımcı olur musnuz?

  10. Projenizi indirip denedim.
    " Dynamic SQL generation for the UpdateCommand is not supported against a SelectCommand that does not return any key column information. "

    Güncelle dediğimde bu hatayı veriyor.

  11. hocam bir kere tek güncelleme yapıyor ikinci kez yapmaya kalkıştığımda olmuyor, başka sayfaya geçip yeniden yapmam gerekiyor. bunu nasıl düzeltirim

Yorum Yap

Wordpress Tema indir