Access – Kreiranje AutoNumber polja

U Access-u moลพete dodeliti odreฤ‘enom polju tip podatka AutoNumber, i to uglavnom radi dobijanja jedinstvenog primarnog kljuฤa odreฤ‘enog entiteta. Ovaj tip podatka omoguฤ‡ava kreiranje brojevnih podataka i to u rastuฤ‡em (Increment) poretku ili generisanjem sluฤajnog broja (Random). Ali, kako samostalno izvesti jedno ovakvo polje? Zapravo, postoje dve metode za kreiranje ovakvog polja pomoฤ‡u programskog koda. Prva je pomoฤ‡u definicione instrukcije SQL jezika – „Create Table“, a druga metoda se oslanja na VBA kod i to pomoฤ‡u poveฤ‡anja osobine dbAutoIncrField. Za kreiranje AutoNumber polja pomoฤ‡u VBA i DAO, iskoristite sledeฤ‡u funkciju:


Function fKreirajAutoNumberPolje( _
ByVal strNazivTabele As String, _
ByVal strNazivPolja As String) _
As Boolean

‘ Kreiramo Autonumber polje sa nazivom=strNazivPolja
‘ u tabeli strNazivTabele.
‘ strNazivTabele: Naziv tabele
‘ u kojoj kreiramo polje
‘ strNazivPolja: Naziv novog polja
‘ Funkcija vraca True ako je uspesna,
‘ u suprotnom False

On Error GoTo ErrHandler
Dim db As DAO.Database
Dim fld As DAO.Field
Dim tdf As DAO.TableDef

Set db = Application.CurrentDb
Set tdf = db.TableDefs(strNazivTabele)
‘ Prvo kreiramo polje sa tipom podataka Long Integer
Set fld = tdf.CreateField(strNazivPolja, dbLong)
With fld
‘ Pretvaramo dbAutoIncrField u atribut
.Attributes = .Attributes Or dbAutoIncrField
End With
With tdf.Fields
.Append fld
.Refresh
End With

fKreirajAutoNumberPolje = True

ExitHere:
Set fld = Nothing
Set tdf = Nothing
Set db = Nothing
Exit Function
ErrHandler:
fKreirajAutoNumberPolje = False
With Err
MsgBox „Greska “ & .Number & vbCrLf & .Description, _
vbOKOnly Or vbCritical, „KreirajAutoNumberPolje“
End With
Resume ExitHere
End Function

Pratite Krstaricu na www.krstarica.com