Tipp 0160 Access-Datenbank mit Tabelle erstellen
Autor/Einsender:
Datum:
  Michael Werner
14.04.2007
Entwicklungsumgebung:   VB.Net 2005
Framework:   2.0
ADOX steht für ActiveX Data Objects Extension. ADOX ist eine Erweiterung für ADO und enthält COM-Schnittstellen zum "Untersuchen" und Ändern von Datenbanken und anderen tabellenartigen Datenquellen.
In unserem Tipp wird ADOX dazu verwendet, eine neuen Access-Datenbank anzulegen und eine Tabelle mit einer bestimmten Struktur zu erzeugen. Zunächst wird geprüft, ob die Access-Datenbank bereits existiert, die auf Abfrage hin gelöscht werden kann. Anschließend wird die Datenbank neu erstellt.
 
Imports System.Data.OleDb
Imports System.IO

Public Class Form1
  Private sDatabasePath As String = "MyNewEmptyUsers.mdb"
  Private sTableName As String = "MyNewUsers"

  Private Sub Button1_Click(ByVal sender As System.Object, _
        ByVal e As System.EventArgs) Handles Button1.Click
    Datenbank_und_Tabelle_erstellen()
  End Sub

  Private Sub Datenbank_und_Tabelle_erstellen()
    Dim fi As New FileInfo(sDatabasePath)
    If fi.Exists Then
      If MessageBox.Show("Die Datenbank existiert bereits." & _
          vbNewLine & "Sie können diese zunächst löschen, " & _
          " wenn Sie sie neu erstellen wollen." & vbNewLine & _
          "Soll die existierende DB wirklich gelöscht werden?", _
          "DB jetzt löschen?", _
          MessageBoxButtons.YesNo, _
          MessageBoxIcon.Exclamation) = _
          Windows.Forms.DialogResult.Yes Then

        File.Delete("MyNewEmptyUsers.mdb")

        MessageBox.Show("Die Access-Datenbank wurde gelöscht!", _
            "Die DB wurde gelöscht!", _
            MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
      Else
        Exit Sub
      End If
    End If

    Dim catalog As Object
    catalog = CreateObject("ADOX.Catalog")
    catalog.create( _
        "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & _
        sDatabasePath)

    MessageBox.Show("Die Datenbank wurde neu erstellt", _
        "Neue Access-Datenbank", _
        MessageBoxButtons.OK, MessageBoxIcon.Information)

    Dim conn As OleDbConnection = New OleDbConnection( _
        "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" _
        & sDatabasePath)
    conn.Open()

    Dim sql As String = "CREATE TABLE " & sTableName & "(" & _
      "ID COUNTER NOT NULL CONSTRAINT PK_ID_no PRIMARY KEY, " & _
        "UserName       Varchar(30) NOT NULL, " & _
        "Passwort       Varchar(10) NOT NULL, " & _
        "Email          Varchar(50), " & _
        "Anrede         Varchar(20), " & _
        "VorName        Varchar(50), " & _
        "NachName       Varchar(50), " & _
        "Kommentar      Text(100), " & _
        "Erster         DateTime, " & _
        "Kontakte       Integer DEFAULT 0, " & _
        "Letzter        DateTime DEFAULT Now, " & _
        "Konto          Currency DEFAULT 0.0," & _
        "Ok             Bit DEFAULT TRUE" & _
        ")"

    Dim cmd As OleDbCommand = New OleDbCommand(sql, conn)
    cmd.ExecuteNonQuery()
    conn.Close()

    MessageBox.Show("Die neue Datenbank" & vbNewLine & _
        sDatabasePath & vbNewLine & vbNewLine & _
        "mit der Tabelle" & vbNewLine & _
        sTableName & vbNewLine & vbNewLine & _
        "wurde erfolgreich erstellt!", _
        "Erfolgreich erstellt: DB und Tabelle", _
        MessageBoxButtons.OK, MessageBoxIcon.Information)

    Process.Start("MyNewEmptyUsers.mdb")
  End Sub
End Class
 
Weitere Links zum Thema
Grafiken in Access-Datenbank speichern

Windows-Version
98/SE
ME
NT
2000
XP
Vista
Win 7


Download  (19,3 kB) Downloads bisher: [ 1642 ]

Vorheriger Tipp Zum Seitenanfang Nächster Tipp

Startseite | Tipps | Projekte | Tutorials | Bücherecke | VB-/VBA-Tipps | API-Referenz | Komponenten | VB.Net-Forum | VB/VBA-Forum | DirectX-Forum | Foren-Archiv | DirectX | Chat | Spielplatz | Links | Suchen | Stichwortverzeichnis | Feedback | Impressum

Seite empfehlen Bug-Report
Letzte Aktualisierung: Samstag, 14. Januar 2012