Viel ADO um die OLE Datenbank Zusammengefasste
Übersetzung eines Interviews zwischen Auf die Frage von Matt Nicholson (MN) über die vorhandenen verschiedenen
Datenobjektmodelle VBSQL (Visual Basic Structured Query Language), RDO (Remote Data
Objects), Als VB (Visual Basic) ursprünglich herauskam, gab es hierfür kein eigentliches Datenmodell. Die Informationen mußten per API (Application Programming Interface) vom SQL-Server geholt werden und zwar über VBSQL. Da VBSQL haargenau auf den SQL-Server abgestimmt war und erst wenige Leute (Anm. d. Ü.: Entwickler) diesen SQL-Server hatten, war das ganz schön schwierig, trotz der einfachen Handhabungs- und Programmierarbeiten. Früher gab es zwei Datenbank-Marktsegmente:
Dann kam Visual Basic 3 mit der Jet-Engine (Anm. d.Ü.: In Access als Basis) und überrollte den ISAM-Markt. Mit dieser Entwicklung kam DAO (s.o.) mit speziellen Werkzeugen für diesen Bereich. Außerdem wurde damit eine Hintertür für den Datenbank-Zugriff auf die Mainframe-Datenbanken per ODBC (Open DataBase Connectivity) geschaffen. Das ODBC-API wurde auf Nachfrage für Entwickler geschrieben, aber hatte Startschwierigkeiten, weil die Kunden mit dieser Art zu arbeiten noch nicht vertraut waren. Auf die Fragen (MN), wie hier VBSQL und ODBCDirect einzustufen sind, wurde folgendes geantwortet (BV): Als erste Schnittstelle für Visual Basic und SQL-Server ging VBSQL den gleichen Weg
wie das ODBCDirect wurde für die MS-Office-Anwendungen klassischer Art entworfen, es konnte mit dem SQL-Server und ODBC-Datenquellen kommunizieren. Trotzdem zögerten einige Kunden, RDO anzuwenden, für diese speziell ist ODBCDirect gedacht und als schlanker Zusatz zu RDO. Auf die Fragen (MN), warum RDO und DAO vom Datenmodell her gleich sind und wie ADO zur OLE-Datenbank verbunden ist, wurde gesagt (BV): Es hängt vom Konstruktionszweck der beiden Modelle, sowie von den verschiedenen Zugriffsarten der Datenbanken ab, Stored Procedures, ISAM und der Heranziehung von Tabellen oder Ergebnis-Sets. Mit der Jet-Engine können Stored Procedures nicht gut gehandhabt werden, hierfür haben wir RDO. Im Endeffekt waren da all die verschiedenen Modelle und wir hatten bestimmt nicht vor, unsere Kunden mit einer neuen Variante restlos zu verwirren. Jetzt, da ADO (s.o.) da ist, haben wir endlich auch eine Möglichkeit, sowohl auf verschiedenste Datenbanken, wie auch auf Texte, Mails und Excel-Sheets zuzugreifen, da es nicht an Tabellen oder Stored Procedures gebunden ist, sondern nur an Daten-Ergebnis-Sets. Mit Visual Basic kann man keine OLE-Datenbank direkt programmtechnisch ansprechen, mit dem ODBC-API aber schon, daher stellt ADO die Programmierschnittstelle zur OLE-DB dar. Für den Entwickler hängt der Einsatz des APIs oder ADO davon ab, ob ein Systemtool (Service) geschrieben werden soll, oder Datenergebnisse gebraucht werden. Heute ist ADO 1.5 ein Subset von RDO. Auf die Fragen (MN), ob man mit mit RDO 2.0 mehr Möglichkeiten als mit ADO hätte, ob RDO-Einsatz noch Sinn macht und in welchem Stadium die OLE-Datenbank befindet, lauteten die Statements (BV): Für ADO 1.5 ist das richtig, da kann RDO manchmal mehr, aber mit ADO 2.0 wird man mehr Möglichkeiten als mit RDO haben. Da es für ein Neuprojekt besser ist, mit ADO zu arbeiten, empfehle ich den RDO/DAO-Einsatz nur, wenn sonst große Umentwicklungsarbeiten notwendig werden. Den Einsatz des ODBC-APIs empfehle ich grundsätzlich nicht, da wir bereits mit ADO 1.4 und ADO 1.5 ausreichend Möglichkeiten haben. Wir ziehen, da die OLE-Datenbank derzeit sehr solide aussieht, dieses Modell den ODBC-Treibern auf jeden Fall vor, das ist die Microsoft-Strategie. Wir werden hier die Entwicklung vorantreiben, da wir hier die größten Möglichkeiten im Bezug auf Vielfalt sehen. Auf die Fragen (MN), ob es einen OLE-DB-Treiber für Exchange geben wird und welche Neuigkeiten BV für Anwender mit Nutzung von RDO-, DAO- und ODBC-API-Anwedungen habe, antwortete Bill Vaughn: Das ist eine Langzeitstrategie, aber noch in Vorbereitung. Nichts ändern, was funktioniert ! Mit dem Einsatz von Web-Servern ensteht die Notwendigkeit, Daten auch auf diesen Servern zu manipulieren. dies wollen wir, z.B.: mittels HTML, über ADO erreichen. Dabei kann mit ADO auch Offline gearbeitet werden und, bei Neukontakt mit diesem Server, dann der Update gemacht werden. Auf die Fragen (MN), ob ADO für den Web-Gebrauch zugeschnitten sei und ob es mit dem MTS (Microsoft Transaction Server) sowie dem MQS (Message Queue Server) arbeite , sagte Bill Vaughn : Da ADO sehr flexibel ist, wurde es natürlich auch für die neueren Technologien entworfen, zum Beispiel für VBScript. Man kann zwar ADO in einer Transaktion benutzen, es macht aber bei Offline-Arbeiten keinen Sinn. Es hängt also vom Grad der Online-Arbeiten ab. Auf die Fragen (MN),was SQL-Server 7 für die Visual Basic Entwicklungen bringen wird und, wenn SQL Server in Windows 98 sein wird, was das für Access bedeuten wird, wurde gesagt (BV): Für die Entwickler: Der SQL-Server 7 wird genauso programmiert wie die Version 6, er ist aber flexibler. Wahrscheinlich wird der SQL-Server Bestandteil von Windows 95 und 98. Wollen Sie eine Anwendung für den Notebook schreiben die mit irgendeinem Server arbeiten soll ? Wie Sie das erreichen können, ändert sich mit dem neuen Datenmodell: Sie schreiben die Anwendung einmal, lassen den SQL-Server synchronisieren und replizieren, und das automatisch, ohne daß Sie die verschiedenen Gegebenheiten der einzelnen Datenbanken, oder deren Standort beachten müssen. Wir können derzeit noch nicht darüber reden, was mit Access passieren wird. Access wird weiterbestehen, aber wir denken im Moment nicht über diese Entwicklung nach. <<Ende des Interviews>> Übersetzt von Helmut Beyerlein Franz-Boeckerstr. 12 86633 Neuburg/Do Zum Seitenanfang |
Bei Fragen wenden Sie sich bitte an das Team
|