ActiveX Data Objects
ActiveX Data Objects (ADO) [ActiveX basierende Schnittstelle zum Datenzugriff auf Datenbanken und tabellenartigen Datenquellen wie z.B. Excel Arbeitsblätter und CSV Dateien.
] ist eine aufGrundlegendes
ADO ist der Nachfolger von DAO (Data Access Objects). Mit ADO lassen sich nahezu alle gebräuchlichen Datenbanken ansprechen, wie z.B. Microsoft Access, SQL-Server, Oracle oder Informix.
Das ADO-Datenmodell besteht aus den 3 wichtigsten Komponenten:
- Connection ("Verbindung"): Muß den Ort und den Namen der angesprochenen Datenbank beinhalten und braucht für eine angesprochene Datenbank nur einmal definiert zu werden.
- Recordset ("Datensatz-Objekt"): Der Verbindung untergeordnetes und abhängiges Objekt das Daten in Form von Tabellen oder Abfragen zurückgibt.
- Command ("Befehls-Objekt"): Das Command-Objekt benötigt keine Connection. Damit lässt sich die Datenbank mit Befehlen wie z.B.
UPDATE
,CREATE TABLE
,INSERT INTO
, usw. ändern.
Der Datenbankzugriff mit ADO weist gegenüber dem Vorgänger (DAO) wesentliche Verbesserungen in der Performance auf. Der Grund liegt bei DAO in der Verwendung der ODBC-Schnittstelle. Für die Festlegung des Datenbankzugriffs wird der OLE DB-Provider benötigt, der zur Neuerung von ADO gehört. Mit Hilfe des Providers kann dem Connection-Objekt mitgeteilt werden, auf welche Datenbank zugegriffen werden soll und um welche Version es sich dabei handelt.
Der Wert wird dabei als String angegeben. Beispiel: "Microsoft.Jet.OLEDB.4.0" für Access 2000.
ADO wird auch im Zusammenhang mit ASP für den Datenbankzugriff verwendet. Nachfolgend ein Beispiel, wie der Aufbau der Connection und die Erstellung eines Recordsets aussehen kann.
sMDB = Server.MapPath("DB/Datenbank.mdb") set Conn = server.CreateObject("adodb.connection") Conn.open "driver={Microsoft Access Driver (*.mdb)};dbq=" & sMDB Set Rec = Server.CreateObject("ADODB.Recordset") Rec.Open SQL, Conn, 3
Wobei dies nur eine Variante von mehreren darstellt.
Die Datenverknüpfungseigenschaften können auch in einer externen UDL-Datei gespeichert werden. Hierzu wird einfach ein neu erstelltes Textfile umbenannt.
Beispiel: Test.udl
Mit Doppelklick auf diese Datei öffnet sich das Dialogfeld "Datenverknüpfungseigenschaften". Damit eine Verbindung mit Hilfe dieses Files hergestellt werden kann, wird der Pfad der ConnectionString
-Eigenschaft zugewiesen. Diese Vorgehensart wird jedoch meist bei der Programmierung von Applikationen in VB, VC++ und anderen Umgebungen verwendet.
ADO unterstützt ausserdem Batch-Updates.
Mit Einführung der .NET Technologie wurde ADO zu ADO.NET was trotz des Namens eher als komplettes Neudesign denn als Evolutionsschritt zu betrachten ist. ADO.NET legt den Schwerpunkt auf sogenannte Disconnected-Szenarios bei denen die Verbindung zur Datenbank immer nur so kurz wie möglich aufrecht erhalten werden soll. Ein ähnliches Prinzip war unter ADO mit den Disconnected Recordsets möglich.
Weblinks
- ADO Dokumentation bei Microsoft (engl.)
- ConnectionStrings Übersicht (engl.)