ADO je programski model koji u sebi sadrลพi sve potrebne metode i aktivnosti za pristupanje bazama podataka. Prethodnica ovog modela za pristup su DAO, i joลก stariji RDO. U Visual Basic-u bazama podataka moลพete pristupiti na dva naฤina: putem ugraฤenih kontrola i ฤarobnjaka uz minimalni unos koda, ili direktno putem programskog koda. Da ne bi bespotrebno okoliลกali preฤiฤemo na primer, gde ฤemo preko programskog koda pristupiti dobro poznatoj bazi „Northwind Traders“ (Nwind.mdb), koja dolazi i sa instalacijom Access-a i sa instalacijom Visual Basic-a. Baza se nalazi u folderu u kom je instaliran Visual Basic.
Pokrenite Visual Basic i otvorite „Standard EXE“ projekt. Da bi uopลกte mogli da koristimo ADO, moraฤemo dodati referencu na Microsoft ActiveX Data Objects 2.0 Library, preko menija „Project> References“. Krenuฤemo sa dodavanjem dve varijable u proceduru „Form_Load()“, gde jedna predstavlja objekat „connection“ za spajanje sa bazom podataka, a druga sam Recordset u kom se ฤuvaju podaci iz tabela baze.
Private Sub Form_Load()
Dim veza As ADODB.Connection
Dim Rs As ADODB.Recordset
End Sub
Nakon ovoga, sledi samo spajanje sa bazom podataka i otvaranje tabele „Employees“ (zaposleni). Spajanje vrลกimo putem ConnectionString-a, u kome se vrลกi definisanje drajvera (vrste baze podataka kojoj se pristupa) i naziva baze podataka:
veza.ConnectionString = "DRIVER=Microsoft Access Driver(*.mdb);
DBQ=Nwind.mdb"
veza.Open "Employees", veza
Do While Not Rs.EOF
List1.AddItem Rs("Last name")
Rs.MoveNext
Loop
Gornji kod ฤe pristupiti bazi, otvoriti tabelu „Employees“ i izlistati sva prezimena zaposlenih. Prezimena ฤe se smestiti u listu, s tim ลกto treba da na formu prethodno postavite jednu kontrolu ListBox. Iลกฤitavanja vrลกimo petljom Do…Loop, koja se izvrลกava sve dok se ne stigne do kraja Recordset-a (Rs.EOF), odnosno tabele. Polju „Last name“ (prezime) pristupamo navodeฤi naziv samog polja „Rs.(„Last name“)“. U petlji treba da bude i instrukcija za prelaz na novi slog u tabeli – Rs.MoveNext, inaฤe ฤemo imati beskonaฤnu petlju gde ฤe se non-stop pojavljivati prvi slog. Kao ลกto moลพemo videti, objekat Recordset poseduje nekoliko vrlo korisnih metoda:
- MoveNext – prelaz na sledeฤi slog.
- MovePrevious – prelaz na prethodni slog.
- MoveFirst – skok na prvi slog u tabeli.
- MoveLast – skok na poslednji slog u tabeli.
- Move X – skok na slog ฤiji je redni broj X.
Otvaranje tabele vrลกimo metodom Open, kojom u Recordset ubacujemo sve slogove iz neke tabele ili iz nekog upita. Videli smo kako se preko ADO-a pristupa nekoj tabeli, a u narednom prilogu ฤemo videti kako se vrลกi pretraลพivanje tabele.
Pratite Krstaricu na www.krstarica.com