Öncelikle nesneleri tanıman gerekli. Nedir bunlar;
Connection,Command ve Reader
Connection ile veritabanı bağlantı (köprü) kurarsın,
Command ile Veritabanına sorgunun gönderir, uygularsın,
Reader ile de veritabanındaki kayıtları okursun.
Command nesnesinin de kendi içerisinde bir kaç özelliği vardır. Bunların komut türüne göre ayırt edilmesi gerekir. Nasıl ayırt edebilirim diyorsan;
Eğer Okuma işi yapacaksan (SELECT komutları) ExecuteReader kullanacaksın ve OleDbReader nesnesi tanımlayarak, verilerini o nesneye atayacaksın.
Eğer Ekleme,Silme,Güncelleme işi yapacaksan (INSERT,UPDATE,DELETE Komutları) ExecuteNonQuery Kullanacaksın.
Eğer Tek bir sonuç getirme durumları olacaksa (Tabodaki kayıt sayısı, Toplam tutar yani SUM,COUNT fonksiyonları ile yaptığımız işlemler) ExecuteScalar kullanacaksın.
Şimdi yukarda belirttiğim bazı şeyleri anlamayabilirsiniz. Kanımca sen sadece okumayı yaptırabiliyorsun. O da yolladığın SQL sorgusundan kanynaklanıyor. Basitce bi kaç örnek göstereyim;
'Bağlantı nesnesi tüm türlerde aynıdır(Okuma,Silme,Güncelleme,Ekleme)
Dim baglanti as new OleDb.OleDbConnection("Provider=Microsoft.Jet.OleDb.4.0;Data Source=C:\Deneme.mdb")
'Şimdi okuma örneği yapalım;
baglanti.open() 'Bağlantıyı açmak gereklidir.
Dim komut as new OleDb.OleDbCommand("SELECT * FROM Personel",baglanti)
'Sorguya dikkat, Personel Tablosundaki tüm alanları oku
'kayıtları alabilmek için Reader Nesnesi kullanman gerektiğini belirtmiştim
Dim oku as OleDb.OleDbDataReader
oku = komut.ExecuteReader() 'Artık tüm veriler oku nesnesinde
'daha sonra tüm kayıtları döngüyle neyi kullanacaksan çekebilirsin. Ben basit birşeyler göstereyim
While oku.Read()
ListBox2.items.Add(Oku.items(1) & " " & oku.items(2))
'Burdaki items: Alan sırası oluyor. items(0) ilk alan (Bende ID diye tanımlıydı), items(1) ikinci alan (Bende Ad olarak tanımlı), items(2) üçüncü alan (Bende Soyad olarak tanımlı)
End While
'Herşey bittikten sonra bağlantıyı kapatıcaz.
baglanti.close()
'Ekleme örneği yapalım
baglanti.open()
Dim komut as new OleDb.OleDbCommand("INSERT INTO Personel(Ad,Soyad,Tel) VALUES('" & Textbox1.Text & "','" & Textbox2.Text & "','" & TextBox3.Text & "');",baglanti)
'görüldüğü gibi komutumuz faklı. INSERT komutu ile ekleme işlemleri yapılır.
komut.ExecuteNonQuery() 'komutu işle
baglanti.close()
'Silme Örneği
baglanti.Open()
Dim komut as new OleDb.OleDbCommenad("DELETE FROM Personel WHERE ID='" & textbox5.Text & "'",baglanti)
'TextBox5'e girdiğim numarası ID ile aynı olan kaydı silecektir.
komut.ExecuteNonQuery()
baglanti.close()
'Güncelleme Örneği
baglanti.Open()
Dim komut as new OleDb.OleDbCommand("UPDATE Personel SET Ad='" & TextBox2.Text & "', Soyad='" & TextBox3.Text & "', Tel='" & TextBox4.Text & "' WHERE ID='5'",baglanti)
'ID numarası 5 olan personelin bilgilerini değiştirir.
komut.ExecuteNonQuery()
Hiç bir yerden alıntı değildir. Sadece buraya yazdım.