C# Access Veritabanı Bağlantısı (Select , İnsert , Update , Delete ) Örnek Uygulama – Web Tasarım & Programlama
C# Programlama Windows Form Örnekleri

C# Access Veritabanı Bağlantısı (Select , İnsert , Update , Delete ) Örnek Uygulama

Tarafından yazılmıştır AhmetC

Bu yazımızda C# Access veri tabanı bağlantısını gösteren basit bir uygulama yapacağız. İlk olarak formumuzu aşağıdaki şekilde oluşturarak kaydedelim.

Formumuzda 5 adet textbox,1 adet datagridview, 3 adet buton ve 5 adet Label  bulunmaktadır.Datagrid sütunlarını aşağıdaki şekilde düzenlemek  isterseniz nasıl yapılacağı ile ilgili videoyu aşağıdaki link’e tıklayarak izleyebilirsiniz.

C# datagrid sütunları düzenleme videosu için tıklayın.

access_baglanti_form

TextBox ların Name özelliğini sırasıyla tbno, tbad, tbsoyad ve tbtel olarak değiştirelim.

 

Daha sonra “okul.accdb” isminde bir veritabanı dosyası oluşturarak projemizin “debug” klasörü içine atalım ve içine aşağıdaki şekilde “ogrenci” tablomuzu oluşturalım.

access_baglanti_veritabani

Aşağıda programımıza ait kodlar bulunmaktadır. Bu kodları inceleyecek olursak griddoldur metodu oluşturularak datagridviewin içeriğinin verilerle doldurulduğunu görüyoruz. Bunu metot içinde yapmamızın amacını programda bir kaç yerde kullanacağımız için aynı kodları tekrar yazmamak olarak açıklayabiliriz.

Form_Load olayına yani form yüklendiği anda verilerimizin datagridview’ de görüntülenmesini istediğimiz için griddoldur metodunu öncelikle buraya ekledik.

Buton1‘ e bastığımızda kayıt ekleme işlemini gerçekleştirdik. Kayıt ekleme işlemi gerçekleştirdikten sonra datagridin güncellenmesini sağlamak için tekrar griddoldur metodunu çağırdık.

Button3 te öğrenci numarasına göre diğer alanların güncellenmesi işlemini gerçekleştirdik.

Button2‘de ise name özelliğini tbnoolarak değiştirdiğimiz textbox’ a girilen öğrenci numarasına ait kaydın silinmesi işlemini gerçekleştirdik.

Datagridview‘ de tıkladığımız satırdaki verilerin textboxlara gelmesi için Datagridview Cell_Enter olayına gerekli kodları yazdık.

Son olarak arama yapmak için textbox5’i kullandık. Buraya yazdığımız öğrenci adına göre veri tabanında filtreleme yapmış olduk.

Arama işleminin Dataview RowFilter kullanılarak nasıl yapılacağı ile ilgili örneğe buradan ulaşabilirsiniz.

Uygulamaya ait örneği buradan indirebilirsiniz.

===== www.ahmetcansever.com =====

Örnek 2: Bu örneğimizde de yine C# Access Veritabanı bağlantısı oluşturacağız. Fakat bu örneğimizde yukarıdaki örnekten farklı olarak parametre kullanımını da göreceğiz. Örneğimize geçelim.

Form tasarımı:

vt_0

Access Veritabanı dosyamız:

vt_1

vt_2

Bizim örneğimizde doyanın ismi dbSirket.accdb Tablo ismi ise Personel olarak belirlendi. Veri tabanımızı oluşturduktan sonra Projemizin ../bin/debug klasörü altına kopyalıyoruz.
Şimdi Formumuza dönebiliriz. Tasarım işini tamamen bitirmek için datagridview özelliklerinden SelectionMode özelliğini Tüm Satır seçili olacak şekilde ayarlayalım. (FullRowSelect)

vt_4

Kodlarımız:

C# veri tabanından datagridview’e veri çekme videosu için tıklayın.
C#  access ‘e kayıt ekleme videosu için tıklayın.
C# access bağlantısı arama yapma videosu için  tıklayın.
C# access veritabanı bağlantısı kayıt güncelleme (update) videosu için  tıklayın.
C# access veritabanından kayıt silme (delete) videosu için  tıklayın.
C# SQL SERVER BAĞLANTISI İÇİN TIKLAYIN.

Facebook Sayfamızı beğenerek daha fazla örneğe ulaşabilirsiniz.

Yorum

  • Merhaba, biz visual studio da checkedlistboxtan seçilen satır indexiyle aynı indexe sahip listboxtaki verinin seçilerek datagridviewe aktarılmasını istiyoruz. Fakat yapamadık, yardımcı olur musunuz?
    Teşekkürlerr, iyi çalışmalar.

  • Hocam Merhaba;
    Acces veritabanı kullanıyorum hocam şuanlık projemde ve Access VeriTabanına Uzaktan Bağlanma yapmak istiyorum bu mümkünmüdür sabit bir ip üstünden server bilgisayarım var ve bu yazdığım programı başka bir bilgisayara yüklediğimde serverdaki veritabanıma kayıt yapmasını istiyorum teşekkür ederim. Kısacası Access VeriTabanına Uzaktan Bağlanma mümkünmüdür.

  • Hocam Merhabalar ;
    Access VeriTabanına Uzaktan Bağlanmak istiyorum sabit bir ip adresi verip başka bir bilgisayardan yazmış olduğum programı yüklediğimde serverdaki acces veritabanına ordan kayıt girmesini istiyorum bu mümkünmüdür. Access VeriTabanına Uzaktan Bağlanma’ kısacası bu mümkünmüdür böyle bir örneğiniz varmıdır acaba çok teşekkür ediyorum.

  • İyi Günler Ben Size Nasıl Anlatsam bilemedim benim sorunum kullanıcı adı ve şifrem var bunu veri tabanında kullanmak istemiyorum ama arada kullanıcı adı ve şifre değiştirmem gerekiyor bunun için ne yapabiliriz

  • Merhaba projem içim bir kütüphane otomasyonu yapıyorum eklersen sorun olmuyor tarihler ama güncellemeye çalışırken sürekli hata alıyorum
    “”””””
    An unhandled exception of type ‘System.Data.OleDb.OleDbException’ occurred in System.Data.dll

    Additional information: Data type mismatch in criteria expression.
    “””””””

    Sorun için yardımcı olur musunuz?

    • SQL Server’da tabloda kayıt edilen tarih formatı ay/gun/yıl şeklindedir. Seninde bu formatta veriyi kaydetmen gerekir.

  • Merhaba
    Öncelikle elinize emeğinize sağlık. Çok faydalı bir site olmuş. Benim şöyle bir sorunum var. Access veritabanımda tahsilat diye bir tablo oluşturdum ve kayıt giriyorum. Yeni kayıt oluşturmada sorun yok ama düzeltme yada silme işlemi yapmayı denediğimde işlem tamamlandı mesajı alıyorum, herhangi bir hata vermiyor ama silme yada güncelleme işleminide yapmıyor. Kodlarım aşağıda.
    Projemde kayıt yapılan 3 form daha var onlarda bir sorun yaşamadım. son oluşturduğum formda bu sorunu yaşıyorum.

    private void button3_Click(object sender, EventArgs e)//SİLME ONAY BUTONU
    {

    {

    try

    {
    DialogResult cevap;
    cevap = MessageBox.Show(“Kayıt silinecek!!! Onaylayın”, “Uyarı”, MessageBoxButtons.YesNo, MessageBoxIcon.Question);
    if (cevap == DialogResult.Yes)
    {
    cmd5 = new OleDbCommand();
    con.Open();
    cmd5.Connection = con;
    cmd5.CommandText = “delete from tahsilat where no=” + dataGridView1.CurrentRow.Cells[0].Value.ToString() + “”;
    cmd5.ExecuteNonQuery();
    cmd5.Dispose();
    con.Close();
    griddoldur5();
    textBox2.Clear();
    textBox3.Clear();
    MessageBox.Show(” KAYIT SİLİNDİ!!!”);
    }
    }
    catch (Exception hata)
    {
    MessageBox.Show(hata.Message);
    }
    }

    }

    • tablonun içini boşaltmaktan kastınız veritabanındaki tabloyu silmekse Delete *From tabloadi şeklinde SQL sorgusu çalıştırmalısınız. Fakat tüm kayıtlar silincektir.

  • hocam dgrid nesnesine kayıt girmek istediğimde yeni satır numarası -1 olarak görünüyor. sebebi ne olabilir? Bi de dgid nesnesine elle giriş yaptığımızda girilen bilgileri veri tabanına kaydetmiyor. c++ builder kullanımı gerçekten çok daha rahattı. orada bu tarz problemler yok denecek kadar az çıkıyoru karşıma.

    • Hata mesaji olarak ne verdigini soylerseniz yardimci olunabilir. Ornege ait indirme linki bulunmakta. İndirip tekrar deneyebilirsiniz.

  • Merhaba ben bir öğrenci takip programı yapmaktayım ödev için, sınıflardaki kayıtlı öğrencilerin çıktısını alıcam okul bilgilerini seçicem fakülte adı,program, sınıf, öğrenim türü seçtikten sonra bana o seçilen değerlerdeki öğrenciler gelicek acaba nasıl yapabilirim bana yardımcı olurmusun. Şimdiden teşekkürler kolay gelsin.

Yorum Yap