Δημιουργία Access database

Η VB.NET δεν παρέχει μέσω του OLEDB Data Provider εγγενή υποστήριξη στη δημιουργία μίας Access database. Αντίθετα πρέπει να χρησιμοποιήσουμε μία ActiveX βιβλιοθήκη που ονομάζεται Microsoft ADO Ext. 2.7 (ή 2.8) for DDL and Security που είναι μία επέκταση του γνωστού ADO. Έτσι θα δημιουργηθεί wrapper για την ActiveX. Θα προστεθεί, στον Solution Explorer, η αναφορά ADOΧ (Interop.ADOΧ.dll).

Για να προσθέσετε την αναφορά επιλέξτε menu Project --> Add Reference... --> πηγαίνετε στην καρτέλα CΟΜ και βρείτε την καταχώρηση Microsoft ADO Ext. 2.7 (ή 2.8) for DDL and Security.

Στο παρακάτω κομμάτι κώδικα έχουμε μία ρουτίνα που δέχεται ως παραμέτρους το path της Access database και το password. Έτσι, θα δημιουργηθεί ένα αρχείο .mdb στην καθορισμένη θέση.

Public Sub CreateDBFile(ByVal strFilePathDB$, ByVal strDBPassword$)

Dim cat As ADOX.Catalog
Dim strConn$

Try

cat = New ADOX.Catalog

If strDBPassword = "" Then

strConn = "Provider=Microsoft.Jet.OLEDB.4.0;
           Data Source=" & strFilePathDB &
           ";Jet OLEDB:Engine Type=5"

 Else

strConn = "Provider=Microsoft.Jet.OLEDB.4.0;
           Data Source=" & strFilePathDB &
           ";Jet OLEDB:Database Password=" & strDBPassword &
           ";Jet OLEDB:Engine Type=5"


End If

'Εδώ δημιουργείται η Βάση.
cat.Create(strConn)

Catch ex As Exception

MsgBox("Δεν μπορώ να δημιουργήσω το αρχείο : " & strFilePathDB &
         vbCrLf & vbCrLf & ex.Message, MsgBoxStyle.Exclamation,
                                          "Δημιουργία αρχείου DB")

Finally

cat = Nothing

End Try

End Sub


To παραπάνω παράδειγμα αφορά μία Access database με format 2000 (Jet 4.0) και μεταγενέστερο.

Δύο παραδείγματα κλήσης :

CreateDBFile("C:\ΠΕΛΑΤΟΛΟΓΙΟ.mdb","")

ή

CreateDBFile("C:\ΠΕΛΑΤΟΛΟΓΙΟ.mdb","chris68")

 

·         Χρήστος Μουρατίδης