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!

8.5.5 Index löschen

9 DAO

/b> ( Data Access Objects) ist neben ADO (Active Data Objects) eine der beiden Bibliotheken für den Zugriff auf die Daten in einer Access-Datenbank. In Access 97 war DAO noch Alleinunterhalter auf diesem Gebiet, ab Access 2000 kam dann ADO hinzu. ADO war eigentlich als legitimer Nachfolger von DAO vorgesehen, denn es ermöglicht sowohl die Verwendung von herkömmlichen Access-Datenbanken als auch von Access-Projekten (.adp), die ebenfalls mit Access 2000 eingeführt wurden. Diese Access-Projekte wurden mit Access 2007 nicht mehr wesentlich weiterentwickelt, sondern nur noch dem Einsatz mit dem SQL Server 2005 angepasst. Und es kommt noch besser: Microsoft empfiehlt in Zusammenhang mit dem SQL Server den Einsatz von ODBC.

Im Gegensatz zu ADO hat Microsoft nur noch DAO für die neue Access-Version weiterentwickelt, und so ist im Rahmen der neuen Office-Version auch eine neue DAO-Version entstanden, die sich nunmehr Microsoft Office 12.0 Access database engine Objects nennt.

In Access-Projekten, die die MSDE oder den Microsoft SQL Server als Datenbank-Backend verwenden, ist ADO die bessere Wahl, denn damit können Sie direkt via OLE DB auf die Daten zugreifen. Um von einer Access-Datenbank, also einer .accdb-Datei, an die Daten in einer MSDE- oder SQL Server-Datenbank heranzukommen, müssen Sie die benötigten Tabellen zunächst per ODBC verknüpfen und können dann per DAO oder ADO darauf zugreifen. Das ist in jedem Fall nur die zweitbeste Wahl, wird aber von Microsoft für Access 2007 so propagiert.

DAO hat also mit Access 2007 an Bedeutung zurückgewonnen, was auch damit zusammenhängt, dass DAO nunmehr allein Bestandteil von Office und nicht mehr von Windows ist. Daneben gibt es eine Menge weiterer Gründe, die alle genauso die Frage beantworten könnten, warum DAO sich letzten Endes - zumindest für den Einsatz mit der neuen Engine ACE - durchgesetzt hat:

  • DAO gibt es bereits einige Zeit und es läuft mittlerweile stabil und fehlerfrei.
  • DAO ist für den Einsatz mit der ACE-Engine optimiert und in Zusammenarbeit damit in vielen Fallen schneller als ADO.
  • Einige Features von Access, etwa die Verwendung der RecordsetClones in Formularen oder das Komprimieren und Reparieren per VBA, erfordern den Einsatz von DAO.
  • Aus diesen Gründen lässt sich schon erkennen, wann die Anwendung von DAO Sinn macht und wann man eher ADO den Vorzug geben sollte.

    Wenn Sie eine Access-Anwendung mit einem überschaubaren Lebenszyklus planen, deren Anwendungszweck keine Wünsche nach einer Erweiterung in Richtung eines »größeren« Systems, also MSDE oder SQL Server, beinhaltet, sind Sie mit DAO gut bedient. Teilweise ist ADO sicher performanter (etwa beim Schreiben von Daten), aber es unterstützt auch nicht die neuen Features von Access.

    Wenn Sie eine bestehende Access-Anwendung weiterentwickeln, die mit DAO arbeitet, hängt es ebenfalls von den Zukunftsplänen mit dieser Anwendung ab - bei einer geplanten Vergrößerung in Richtung SQL Server macht ein Umstieg auf ADO definitiv Sinn - je früher, desto besser. Je mehr hier noch in DAO hinzuprogrammiert wird, desto mehr ist anschließend nach ADO umzuwandeln. Sie können natürlich auch mit beiden Bibliotheken parallel arbeiten - und so bei Bedarf neue Bestandteile mit ADO entwickeln und Bestehendes Stück für Stück umwandeln.

    Wenn Sie DAO bereits kennen und sich noch nicht besonders mit ADO auseinandergesetzt haben, lohnt es unter Umständen vielleicht gar nicht mehr, sich noch mit ADO zu beschäftigen - ist doch ADO.NET bereits allgegenwärtig. Das ist allerdings hypothetisch, denn zum Zeitpunkt der Drucklegung dieses Buchs gab es noch keine verbindliche Aussage von Microsoft, ob und wann die .NET-Technologie (vielleicht in Form von VBA.NET?) Einzug in Access hält.

    Für den Fall, dass Sie aufgrund der oben genannten Gründe DAO für die richtige Datenzugriffstechnik unter VBA halten, finden Sie in den nächsten Abschnitten alles Wichtige zu diesem Thema. Anderenfalls überspringen Sie dieses Kapitel einfach und wenden sich direkt Kapitel 10, »ADO« zu.

    Nächster Abschnitt:

    9.1 DAO und ADO im Einsatz

    Abschnitte dieses Kapitels:

    9.1 DAO und ADO im Einsatz

    9.2 Das DAO-Objektmodell

    9.3 DBEngine

    9.4 Workspace - Arbeitsbereich oder Sitzung?

    9.5 Aktuelle Datenbank referenzieren

    9.6 Das Database-Objekt

    9.7 Daten bearbeiten mit dem Recordset- und dem Recordset2- Objekt

    9.8 Sortieren und Filtern von Datensätzen

    9.9 Daten bearbeiten

    9.10 QueryDefs - Auswahl oder Aktion nach Wahl

    9.11 Transaktionen

    © 2006-2008 André Minhorst Alle Rechte vorbehalten.