Visualbasic 6.0 Access ve SQL Dersleri 1 [VB]
  1. Visualbasic ile Access Arasında Baglantı Oluşturma

 

Visualbasic ile Access arasında 3 türlü baglantı oluşturabilinir. Bunlar;

  1. ADO ADODC yöntemi ile
  2. ODBC yöntemi ile
  3. ADODB yöntemi ile

 

  1. Adodc ile access arasında baglantı kurmak ;

 

Visualbasicte Araç Penceresine ADODC nesnesini yerleştirmek için Toolsa sag Tuşlayıp Componentsi seçebilir

Veya Tools Üzerinde CTRL+T tuşlayarak Component penceresi açılır.

Ve Çıkan listeden Microsoft ADO Data Control 6.0 Nesnesi seçilir.

Nesneyi Formumuza yerleştirdikten sonra Adodca sag tuşlanır ve ADODC Propertiesten Baglantı Use Connection

Radyo butonu secili haldeyken Build butonuna basarak Baglantımızı nasıl yapacagımız seçeriz.

Biz bu örnekte Microsoft Jet 4.0 OLE DB Provideri seçiyoruz.Ve Next Tuşlayarak Access Dosyamız nerede ise

Select or enter a Database name : adlı sahada dügmeye basarak Acces dosyamızı gösteriyoruz.

Test Connection dügmesine bastıgımızda baglantı saglandı demelidir. OK dügmesine basarak

ACCESS dosyamızı secmiş olduk.Şimdi basitce RecordSource Sekmesinden Command Source bölümünde

Table adlı alanı seciyoruz ve bir alt satırda Table or Stored Procedure Name hangi tablo ile calışacaksa o tabloyu

seciyoruz.

Örnek : Seçtigimiz Access Dosyası Adı Veritabanı.mdb seçtigimiz Tablo adı ise Kayitlar adlı tablodur.

 

Şimdi Bu kayıtlarımızı biz MSHFLEXGridde gösterelim.

Yine Component Toolsa Gelerek CTRL+T yapalım ve Listeden Microsoft Hierarchical FlexGrid 6.0 adlı componenti
Ekliyoruz.Ve Sonra Ekrana bu flexi yerleştiriyoruz.

Flexin F4 Properties Özelliklerinde Datasource bölümünde ADODC nesnesini gösteriyoruz.

Çalıştır dedigimiz an Ooo süper ekrana geldi tüm kayıtlar…

 

Yo Hayır kontrol benim elimin altında olsun ben select yöntemi kullanarak yapmak istiyorum derseniz.

Adodc1 Propertiesinde Tablo olarak sectigimiz Recordsource bolumunu AdCmdUNKOWN olarak
bıraktıktan sonra

Adodc1.RecordSource = "select * from kayitlar"
Set MSHFlexGrid1.DataSource = Adodc1
Adodc1.Refresh

 

Örnegin belirli bir tarih aralıgı verip Flexte gösterelim

Adodc1.RecordSource = "select * from kayitlar where Tarih >='" & Trim(Text1.Text) & "'" and Tarih<='" & Trim(Text2.Text) & "'""
Set MSHFlexGrid1.DataSource = Adodc1
Adodc1.Refresh

 

Kayıt Ekleme

Yukarıda anlattıklarımla Kayıtlarımıza ulaşmak icin 2 türlü yöntem secebiliyoruz,

Eger baglantımızı kendimiz yöneterek Adodc1.RecordSource = "select * from kayitlar" ile yaparsak

Kayıt ekleme kodları aşagıdaki gibi olur

 

Adodc1.Recordset.Addnew
Adodc1.Recordset!Adi=Text1.text
Adodc1.Recordset!Soyadi=Text2.text
Adodc1.Recordset!Yasi=Text3.text
Adodc1.Recordset:Update

Buraya kadar kayıtlarımızı iceriye kaydettigimizi belirtiyoruz,

Hem kaydetsin hemde flex üzerinde hızlıca gösterelim derseniz

 

Adodc1.Recordset.Addnew
Adodc1.Recordset!Adi=Text1.text
Adodc1.Recordset!Soyadi=Text2.text
Adodc1.Recordset!Yasi=Text3.text
Adodc1.Recordset:Update
‘Bu Satırlarıda update cumlesinden sonar koydugumuzda otomatikmen kayıtlarımızı görecegiz.
Adodc1.RecordSource = "select * from kayitlar “
Set MSHFlexGrid1.DataSource = Adodc1
Adodc1.Refresh

 

Kayıtları Seçerek Textlere Aktarmak

 

Dim SQL As String
If Trim(MSHFlexGrid1.TextMatrix(MSHFlexGrid1.Row, 1)) <> "" Then
Adodc1.RecordSource " SELECT * from Kayitlar Where ID = " & MSHFlexGrid1.TextMatrix(MSHFlexGrid1.Row, 4) ""
Text1.Text = adodc1.recordset!adi
Text2.Text = adodc1.recordset!soyadi
Text3.text=adodc1.recordset!yasi
Else
MsgBox "Başka Kayıt Bulunamadı", vbCritical, "Technology"
End If

 

 

 

Öncelikle şunu belirteyim arkadaşlar.Veritabanımızdaki Tablolarda herne olursa olsun mutlaka ama mutlaka her kaydın bir ID si olmalıdır,öylede yapın derim.Cok işinize yarayacaktır ID koymak.

Örnegin yukarıdaki tabloda Flex üzerinde isime gore degilde ID gore arama gerceklestirdim.E cunku aynı isimden birden fazla olabilir dimi ? E ama ID ise 1 tanedir. Yukarıdaki Kodu anlatmaya gelirsekte

Where Cümlesinde ID yi arıyorum,evet nerde arıyorum Flexin 4.Kolonunda arıyorum. Ben clickledigim an o ID yi tespit ediyor ve ekrana sadece o ID ye ait bilgileri textlere yazmaktadır.


Ekleyen: WALLACEs | Eklenme Tarihi: 27.01.2016