Pdksdb.fdb dosyasından veri almak

Katılım
4 Mart 2005
Mesajlar
68
Excel Vers. ve Dili
Excel 2003
Sayın Arkadaşlar
Forumda verilen örnekleri kontrol ediyorum.
Ado ile sadece *.mdb dosyasına baglanmayı bulabildim.
Access dosyasına degilde baska bir dosyaya *.fdb dosyasına baglanmak ıstıyorum.Baglandıktan sonra istedigim bilgileri SQL kodu ile çekip Listbox'a eklemek istiyorum.
Bu konuda bana yardımcı olabılır mısınız.
 

Zeki Gürsoy

Uzman
Uzman
Katılım
31 Aralık 2005
Mesajlar
4,369
Excel Vers. ve Dili
Office 365 (64 bit) - Türkçe
Merhaba,
Bunun için bilgisayarınızda "Firebird Server" ve "Firebird ODBC Driver" mevcut olmalıdır.

"Kullanıcı" ve "şifre" değiştirilmediyse, bağlantı komutunuz;
Kod:
Dim bag As Object 

Set bag = CreateObject("ADODB.Connection") 
bag.Open ( _ 
"DRIVER=Firebird/InterBase(r) driver;UID=SYSDBA;PWD=masterkey;DBNAME=Pdksdb.fdb")
Kaynak: http://www.vbcode.info/viewtopic.php?t=1569&highlight=
 
Katılım
4 Mart 2005
Mesajlar
68
Excel Vers. ve Dili
Excel 2003
Ado Kullanarak Baglanma

SAYIN ARKADASLAR FORMA SORDUGUM SORUNUN CEVABINI ARASTIRMALARIM SONUCU BULDUM. SONUCTA BU FORUM EXCEL PAYLASIM FORMU OLDUGU ICIN HEPINIZLE PAYLASMAK ISTEDIM.

OKUDUGUM MAKALE ASAGIDADIR.
HERKESE KOLAY GELSIN

"ADODB Kullanımını öğrenmek isteyenler buraya.. "

ADODB Kullanımı ve Püf Noktaları
Bence en iyi veri tabanı nesnesi arabrimi ADO dur. Zaten
bub için 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 için öncelikli olarak "Project-References" menüsünden
"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.OLEDB.4.0;
Data Source=DataBaseAdi"
Eğer ODBC kullanacak isek
Conn.ConnectionString="DNS(DataBaseAdi)"

Eğer MySQL kullanacak isek
Conn.ConnectionString="DRIVER={MySQL ODBC 3.51 Driver};
SERVER=" & _SunucuAdı& "; DATABASE=" & DataBaseAdi& ";
UID=" & KullaniciAdi & _";PWD=" & Sifre
Eğer MSSQL kullanacak isek
Conn.ConnectionString="DRIVER={SQL Server}; 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 açık olup olmadığını
denetleyip kapatmalıyız.

if Conn.State<>adStateClosed then
Conn.Close
end if

Bağlantımızı Kuduğumuza göre Recordset nesnesine
geçebiliriz.

Recordset Nesnesi
Recordset nesnesi Veritabanındaki kayıtları yönetmek
için kullanılır.

Dim RS as new ADODB.Recordset

Rebord Nesnesinin başlıca komutları
.Open 'belirtilen SQL konumutunu işletir yada kaydı açar
.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 'üzerinde bulunulan kayıtı sil
.Close 'kayıt nesnesini kapat

Hemen bir kaç örnek verelim.
Örnek 1:
Şimdi Personel data.mdb database'ine bağlanıp buradaki
personel tablosundaki isimlerini
List1'in içine ekleyelim..


Dim Conn As New ADODB.Connection
Conn.ConnectionString="Provider=Microsoft.Jet.OLEDB.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

Örnek 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.OLEDB.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
çok 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 açtık nede dene kod yazdık.

Örnek 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.OLEDB.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 şöyle dersek yaptığımız işlemden kaç kaydın
etkilendiğinide öğrenebiliriz..

Conn.Execute "delete from personel where BolumNo="& 5
,Sonuc
Msgbox Sonuc &" kayıt silindi!"
 
Katılım
24 Kasım 2006
Mesajlar
42
Excel Vers. ve Dili
excel 2007
Altın Üyelik Bitiş Tarihi
02-07-2021
Eline sa&#287;l&#305;k iyi bir &#231;al&#305;&#351;ma olmu&#351;.Benim bir sorunum var. Bu pdks den excel e veriyi na&#305;l alacag&#305;m&#305; bilmiyorum.Biraz daha a&#231;&#305;klay&#305;c&#305; bilgi verebilirmisin.
 
Son düzenleme:
Üst