Access – Kreiranje tabela uz pomoć VBA koda

U Access-u postoji mnogo načina da kreirate tabele i upite. Naravno, najjednostavniji je preko Database prozora, a nešto složeniji način je uz pomoć VBA programskog koda. I u jednom i u drugom slučaju samo vi kao dizajner baze podataka možete da kreirate novu tabelu ili upit. Postavlja se pitanje kako omogućiti korisnicima baze podataka/programa da kreiraju novu tabelu? U ovom slučaju jedino rešenje je programski kod kojim ćete korisnicima obezbediti mogućnost kreiranja novih tabela i upita.

Za kreiranje nove tabele u pomoć nam priskače SQL i njegova instrukcija CREATE TABLE. U sledećem jednostavnom primeru videćemo kako se kreira jedna nova tabela:


Sub KreirajTabelu()
Dim Table As New Table
Dim Catalog As New ADOX.Catalog
Dim Key As New ADOX.Key
Catalog.ActiveConnection =
"Provider=Microsoft.Jet.OLEDB.4.0;
Data Source=C:BazeImenik.mdb"

Table.Name = "KONTAKTI"
Table.ParentCatalog = Catalog
Table.Columns.Append "SIFRA", adInteger
Table.Columns("SIFRA").
Properties( AutoIncrement ) = True
Table.Columns.Append "IME", adVarWChar, 20
Table.Columns.Append "PREZIME", adVarWChar, 20
Table.Columns.Append "TELEFON", adVarWChar, 36
Catalog.Tables.Append Table
Key.Name = "SIFRA"
Key.Type = adKeyPrimary
Key.Columns.Append "SIFRA"
Catalog.Tables("KONTAKTI").
Keys.Append Key, kyPrimary
Set Catalog.ActiveConnection = Nothing
End Sub

Ovim programskim kodom definisali smo proceduru „Kreiraj tabelu()“, koja vam na prvi pogled izgleda komplikovano, ali to i nije baš tako. Prve četiri linije koda služe za deklarisanje potrebnih varijabli. ADOX predstavlja ActiveX objekat koji je definisan od strane programera, a da biste ga uopšte mogli koristiti, moraćete da ga referencirate preko izbora menija „Tools> References…“ i potvrđivanja polja sa ActiveX bibliotekom – „Microsoft ActiveX Data Objects XX Library“. Nakon toga, kreiramo konekciju ka željenoj bazi podataka u kojoj ćemo kreirati novu tabelu. Potom određujemo sve osobine buduće tabele, od samog naziva (Name) do navođenja svih polja u tabeli sa karakteristikama. Iza toga, instrukcijom „Catalog.Tables.Append Table“ izvršavamo kreiranje. Na red dolazi i kreiranje primarnog ključa i upis ključa u tabelu. Ovim smo završili kreiranje nove tabele, te nam ostaje samo da oslobodimo sve resurse, tj. prekinemo aktivnu konekciju.

Pratite Krstaricu na www.krstarica.com