ADODB Kullanımı ve Bazı Puf Noktaları
Bence en iyi veri tabanı nesnesi arabrimi ADO dur. Zaten bub icin Ado hakında makale yazıyorum.
Makale boyunca Adonun iki nesnesinsen bahsedeğiz ilki "Connection"
yani bağlantı nesnesi ve digeri ise "Recordset" yani kayıt nesnesi.
Connection Nesnesi
Ado'yu kullana bilmek icin oncelikli olarak "Project-References" menusunden
"Microsoft Data Objects 2.0" veya "2.1-2.5-2.6-2.7-2.8" dan birtanesi tanımlanır.
Dim Conn As New ADODB.Connection ' Bağlantımızı tanımladık.
Eğer Access kullanacak ise "MS jet" ile bağlamamız Gerekir.
Conn.ConnectionString="Provider=Microsoft.Jet.OLED B.4.0; Data Source=DataBaseAdi"
Eğer ODBC kullanacak isek
Conn.ConnectionString="DNS(DataBaseAdi)"
Eğer MySQL kullanacak isek
Conn.ConnectionString="DRIVER=; SERVER=" & _
SunucuAdı& "; DATABASE=" & DataBaseAdi& "; UID=" & KullaniciAdi & _
";PWD=" & Sifre
Eğer MSSQL kullanacak isek
Conn.ConnectionString="DRIVER=; Server=" & SunucuAdi & "; " & _
"Database=" & DataBaseAdi & ";UID=" & KullaniciAdi & ";PWD=" & Sifre & ";"
Burada
SunucuAdı 'bilgisayarımız yada bağlanacagımız Sunucunun adı sucuya bağlanmacak isek
"localhost" yazılabilir
DataBaseAdi ' kullanacağımız database in adı eğer verilmedi ise boş olmalı
KullanıcıAdı 'database verdiğimiz kullanıcı adı eğer verilmedi ise boş olmalı
Sifre 'database verdiğimiz sifre eğer verilmedi ise boş olmalı
Bağlanmızın ConnectionString değerini girdikten sonra geriye bağlantı yap demek
kaldı bunuda aşağıdaki gibi yaparız.
Conn.Open
İpucu:
Eğer bağlantıyı kapatmak istiyorsak acık olup olmadığını denetleyip kapatmalıyız.
if Conn.StateadStateClosed then
Conn.Close
end if
Bağlantımızı Kuduğumuza gore Recordset nesnesine gecebiliriz.
Recordset Nesnesi
Recordset nesnesi Veritabanındaki kayıtları yonetmek icin kullanılır.
Dim RS as new ADODB.Recordset
Rebord Nesnesinin başlıca komutları
.Open 'belirtilen SQL konumutunu işletir yada kaydı acar
.MoveNext 'bir kayıt ileri git
.MoveMovePrevious 'bir kayıt geri git
.MoveLast 'son kayıta git
.MoveFirst 'ilk kayıta git
.Move 'kayıta git
.EOF 'bayıt başı
.BOF 'kayıt sonu
.Recordcount 'kayıt sayısını verir
.Addnew 'yeni kayıt ekle
.Update 'değişiklikleri kaydet
.Delete 'uzerinde bulunulan kayıtı sil
.Close 'kayıt nesnesini kapat
Hemen bir kac ornek verelim.
Ornek 1:
Şimdi Personel data.mdb database'ine bağlanıp buradaki personel tablosundaki isimlerini
List1'in icine ekleyelim..
Dim Conn As New ADODB.Connection
Conn.ConnectionString="Provider=Microsoft.Jet.OLED B.4.0; Data Source=C:\data.mdb"
Conn.Open
Dim RS as new ADODB.Recordset
Rs.Open "Select * from personel",Conn,adOpenKeyset ,adLockOptimistic
Do until Rs.Eof
List1.AddItem Rs!Adi & " " & Rs!Soyadi
Rs.MoveNext
Loop
Rs.Close
Ornek 2:
Şimdide data.mdb database'ine bağlanıp buradaki personel tablosuna yeni bir kayıt
ekleyelim..
Dim Conn As New ADODB.Connection
Conn.ConnectionString="Provider=Microsoft.Jet.OLED B.4.0; Data Source=C:\data.mdb"
Conn.Open
Dim RS as new ADODB.Recordset
Rs.Open "Select * from personel",Conn,adOpenKeyset ,adLockOptimistic
Rs.AddNew 'Kayıt Ekle
Rs!Adi="mehmet" 'Fieldlere bilgileri yaz
Rs!Soyadi="yaradanakul" 'Fieldlere bilgileri yaz
Rs.Update 'Girilen bilgileri kaydet
Rs.Close 'Kayıt nesnesini kapat
İpucu:
Yada bu işi Connection nesnesinede yaptırabiliriz hemde cok daha hızlı bir şekilde nasıl derseniz
Conn.Execute "SQL deyimi"
komutu ile
Conn.Execute "insert into personel(adi,soyadi) values('mehmet','yaradanakul')"
işte hepsi bu ne Recorset actık nede dene kod yazdık.
Ornek 3:
Şimdide data.mdb database'ine bağlanıp buradaki personel tablosundan kayıt silelim.
Dim Conn As New ADODB.Connection
Conn.ConnectionString="Provider=Microsoft.Jet.OLED B.4.0; Data Source=C:\data.mdb"
Conn.Open
Dim RS as new ADODB.Recordset
Rs.Open "Select * from personel Where Adi='" & "mehmet" &"'",Conn,adOpenKeyset &_
,adLockOptimistic
Rs.Delete
Rs.Close
İpucu:
Bu işlemide Connection nesnesine yaptırabiliriz
Conn.Execute "delete from personel where Adi='mehmet'"
ve hatta şoyle dersek yaptığımız işlemden kac kaydın etkilendiğinide oğrenebiliriz..
Conn.Execute "delete from personel where BolumNo="& 5 ,Sonuc
Msgbox Sonuc &" kayıt silindi!"
SQL kullanımı hakkında daha fazla bilgi isterseniz.
http://www.vbturk.net/idsorgula.asp?id=551 'SQl Bolum 1 (Select Deyimi)
http://www.vbturk.net/idsorgula.asp?id=566 'SQL KOMUTLARI Bolum-2(Kume Fonksiyonları)
Baksana59
__________________
ADODB Kullanımı ve Puf Noktaları//:Baksana59
Programlama0 Mesaj
●28 Görüntüleme
- ReadBull.net
- Programlama ve Yazılım
- Programlama
- ADODB Kullanımı ve Puf Noktaları//:Baksana59