Warum noch ein Access-Buch?
Für wen ist das Buch?
Jetzt bestellen
+ direkter Download des eBooks!
Nur EUR 59,95!
Fehler gefunden?
Bitte melden!
Wünsche an das Buch?
Her damit!
Was denken die Leser über dieses Buch?
Lesen Sie aktuelle Rezensionen!
Kapitel des noch nicht veröffentlichten Buchs zum Downloaden, Probelesen und Kommentieren
Beispieldatenbanken
Zusätzliches Material

Das Buch im HTML-Format

Für unbestimmte Zeit bieten Addison-Wesley und André Minhorst den kompletten Inhalt des Buchs als Download an. Schauen Sie rein und informieren Sie sich über den Inhalt! Und wenn Ihnen das Buch nützlich erscheint und Sie glauben, dass Sie etwas gelernt haben oder durch das Gelesene sogar etwas Zeit und somit Geld bei Ihrer Arbeit einsparen konnten, können Sie sich ja beim Autor und beim Verlag revanchieren - beispielsweise durch den Kauf dieses Buchs.

Am schönsten wäre es natürlich, wenn Sie das Buch direkt hier bestellen - Sie erhalten das Buch dann direkt vom Verlag, und der Autor und Verlag haben dann noch mehr davon, als wenn Sie es anderswo kaufen.

Danke für Ihr Interesse!

10 ADO

10.1 Zugriff auf eine Datenquelle herstellen

Obgleich Sie im Folgenden feststellen werden, dass viele Vorgehensweisen unter DAO und ADO gleich ablaufen, unterscheidet sich das Objektmodell von ADO in einigen Punkten vom DAO-Objektmodell. Das macht sich beim Zugriff auf die gewünschte Datenbank sofort bemerkbar, wie der folgende Abschnitt zeigen wird.

Connection und ConnectionString

Das beginnt damit, dass nicht das Database-Objekt, sondern das Connection-Objekt Ursprung aller lesenden, schreibenden und sonstigen Zugriffe auf die Tabellen der Datenbank ist. Das Connection-Objekt enthält immer einen ConnectionString, der Informationen über die Verbindung zur gewünschten Datenbank enthält. Diesen ConnectionString stellt man entweder selbst zusammen oder man lässt sich dabei unterstützen. Die einfachste Methode dazu ergibt sich beim Zugriff auf die aktuelle Datenbank. In diesem Fall brauchen Sie einfach nur auf das Connection-Objekt des bestehenden CurrentProject-Objekts zuzugreifen.

Public Sub Verbindung()
    Dim cnn As ADODB.Connection
    Set cnn = CurrentProject.Connection
    With cnn
        Debug.Print cnn.ConnectionString
    End With
End Sub

Listing 10.1: Erzeugen einer Verbindung zur aktuellen Datenbank und Ausgabe der ConnectionString-Eigenschaft

Die Verbindungszeichenfolge für die aktuelle Datenbank sieht etwa so aus - gut, dass Sie diesen Ausdruck nicht selbst zusammenstellen müssen:

Provider=Microsoft.Jet.OLEDB.4.0Microsoft.ACE.OLEDB.12.0Microsoft.ACE.OLEDB.12.0;User ID=Admin;Data Source=E:\ADO.accdbmdb;Mode=Share Deny None;Extended Properties="";Jet OLEDB:System database=C:\Dokumente und Einstellungen\Administrator\Anwendungsdaten\Microsoft\Access\System.mdw;Jet OLEDB:Registry Path= Software\Microsoft\Office\12.0\Access\Access Connectivity EngineSoftware\Microsoft\Office\11.0\Access\Jet\4.0;Jet OLEDB:Database Password="";Jet OLEDB:Engine Type=65;Jet OLEDB:Database Locking Mode=1;Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:New Database Password="";Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Don't Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False;Jet OLEDB:Support Complex Data=True

Was die Parameter im Einzelnen bedeuten, soll hier gar nicht aufgeschlüsselt werden. Für die Verwendung der Datenbank, zu der auch das VBA-Projekt gehört, reicht die Kenntnis, dass CurrentProject.Connection die richtige Verbindung liefert.

Für den Fall, dass Sie einmal eine Verbindung zu einer externen Datenquelle herstellen möchten, brauchen Sie den ConnectionString auch nicht unbedingt manuell zusammenzustellen. Zur Ermittlung der passenden Parameter können Sie auch einen Dialog verwenden, der bei der Festlegung der Parameter behilflich ist.

Die folgende Routine erzeugt eine Instanz des DataLinks-Objekts und zeigt mit der Methode PromptNew den Dialog zum Anlegen einer neuen Verbindungszeichenfolge an (siehe Abbildung 10.1).

Public Function ConnectionStringErmitteln()
    ConnectionStringErmitteln = CreateObject("DataLinks").PromptNew
End Function

Listing 10.2: Aufruf des Dialogs zum Ermitteln einer Verbindungszeichenfolge

Mit dem gleichen Dialog können Sie nicht nur die Eigenschaften neuer Verbindungen auswählen und zurückgeben lassen, sondern auch die Eigenschaften von CurrentProject.Connection etwas übersichtlicher ausgeben (siehe Abbildung 10.2). Dazu müssen Sie die aufrufende Routine geringfügig abändern:

Public Function ConnectionStringBearbeiten()
    ConnectionStringBearbeiten = _
        CreateObject("DataLinks").PromptEdit(CurrentProject.Connection)
End Function

Listing 10.3: Aufrufen des Dialogs Datenverknüpfungseigenschaften für eine bestehende Verbindungszeichenfolge

Abbildung 10.1: Anlegen einer neuen Verbindung

Abbildung 10.2: Bearbeiten von CurrentProject.Connection

Nächster Abschnitt:

10.2 Manipulation des Datenmodells

© 2006-2008 André Minhorst Alle Rechte vorbehalten.