Microsoft, Borland und Computer Associates kündigen Neuerungen an

Die Softwareriesen bringen Windows-Datenbanken heraus

08.01.1993

Ring frei für den Kampf der Windows-Datenbanken. Borland schickt "Paradox for Windows" und "Dbase for Windows" ins Rennen. Microsoft tritt gegen diese Produkte mit "Access" und "Foxpro for Windows 2.5" an. Dritter im Bunde ist Computer Associates (CA). Das Unternehmen bietet "Dbfast for Windows" an sowie den Windows-Clipper "Aspen" (ein Codename). Den Schritt von der Mac- in die Windows - Welt gewagt hat im übrigen Claris, die demnächst ihren "Filemaker Pro" auch PC-seitig offerieren möchte.

Nicht alle diese Produkte buhlen um den gleichen Kundenkreis. Das zeigt sich schon daran, daß drei der genannten Softwarehäuser jeweils zwei Windows-Datenbanken gleichzeitig anbieten wollen. Bei Borland und Microsoft ist das Prinzip ungefähr dasselbe: Die eine der beiden Datenbanken wird für den klassischen Programmierer angeboten, die andere eher für den versierteren Endanwender.

Zunächst zum Anwender, der nicht allzuviel vom Programmieren versteht und auch nichts davon wissen will. Ihn will zum Beispiel Claris ansprechen, die bislang nur im Mac-Sektor tätig war. Daß ausgerechnet die Datenbanksoftware "Filemaker Pro" ihr Windows-Debüt werden soll, liegt wohl an ihrem Erfolg im Mac-Markt und am Fehlen breiter Konkurrenz. Ein erster Gehversuch mit der Software zeigt denn auch, daß auf Bewährtes gesetzt wurde: Die Benutzeroberfläche hat sich unter Windows kaum verändert.

Gleichgeblieben ist allerdings auch das hauseigene Dateiformat, das folglich nicht mit dem unter DOS verbreiteten Dbase (Xbase) funktioniert. Die Möglichkeiten und Leistungen von Filemaker mögen vielen zwar eingeschränkt erscheinen, doch für einfachere Datenbanken reichen sie allemal. Immerhin ist eine Art Makro- oder Scriptsprache vorhanden, mit der sich gewisse Abläufe automatisieren und zum Beispiel in Buttons einbauen lassen. Alles per Mausklick, simpel und ohne allzu viele Extras.

Altbekanntes bei Foxpro

Foxpro für Windows ist besonders konsequent auf die Xbase-Gemeinde zugeschnitten und somit für Programmierer gedacht. Gemeint sind mit Xbase jene De-facto-Standards bei PC-Datenbanken, die die von Borland aufgekaufte Ashton-Tate mit Dbase setzen konnte. Da der Gebrauch der Bezeichnung Dbase unter markenrechtlichen Gesichtspunkten strittig war, sprach die Konkurrenz fortan von Xbase.

Foxpro arbeitet, eine ebenfalls oft übersehene Unterscheidung, nicht nur beim Datenformat mit den Xbase-Normen, sondern auch bei der Programmierung. Das hat den Vorteil, daß jeder, der den Xbase-Sprachenstandard kennt, auch ein Foxpro-Programm sofort mehr oder minder verstehen wird. Mehr noch: Laut Microsoft konnten Programme, die unter der DOS-Version von Foxpro entwickelt wurden, ohne größere Umstellung direkt in Windows übernommen werden. Das gilt auch für die Benutzeroberfläche eigener Programme, unter anderem deshalb, weil schon unter DOS mit Fenstern und ähnlichen Dingen gearbeitet wurde. Der Schritt zu Windows dürfte für Foxpro-Anwender folglich nicht zu groß sein.

Im Gegensatz zu Dbfast von Computer Associates, das auf ähnliche Weise auf den Xbase-Standard baut, ist Foxpro vom Aufbau her wesentlich komfortabler. Vom Programmieren ist denn auch beim ersten Kontakt mit Foxpro for Windows nichts zu spüren. Allenfalls das Kommandofenster, über das die altbekannten Dbase-Befehle wie "USE", "MODIFY" oder "EDIT" eingegeben werden können, erinnert an frühere Zeiten. Ansonsten jedoch läuft beim Definieren der Datenbanken, Masken, Abfragen und Berichte alles mit der Maus.

Irgendwann kommt aber der Punkt, an dem Variablen eingegeben oder einige Zeilen Code verlangt werden. Etwa wenn beim Erstellen der Maske definiert werden muß, nach welchem Kriterium eine vom Benutzer getätigte Eingabe überprüft werden soll (die "VALID"-Klausel also). Oder wenn festzulegen ist, was beim Öffnen und Schließen des Datenfensters zu geschehen hat. Solche Xbase-Elemente sind überall in Foxpro wieder anzutreffen: Mit ihnen wird eine zuvor entworfene Benutzeroberfläche quasi zum Leben erweckt. Echtes ereignisgesteuertes Programmieren ist das allerdings nicht, denn im Grunde ist die Entwicklungsumgebung von Foxpro nichts anderes als ein großer Programmgenerator, der aus den Angaben über das Aussehen der Benutzeroberfläche und den vom Programmierer direkt eingetippten Programmbefehlen das Foxpro-Programm generiert. Am Schluß wird das Ganze kompiliert, fertig ist die Anwendung.

Dieses Verfahren mag zeitsparend und beim Programmieren im Endeffekt sehr effektiv sein, es ist aber auch komplex. Das hat nicht nur Konsequenzen bei der Leistung, sondern macht die Entwicklung einer Anwendung für den Benutzer nicht gerade leicht durchschaubar. Dbase-Programmierer der alten Schule werden sich anfangs verloren fühlen und nicht mehr wissen, wo sich ihr Programmcode in Foxpro versteckt hält.

An solche Dinge gewöhnen müssen wird sich der Programmierer auch bei Paradox for Windows von Borland. Auch hier gab es ein DOS-Vorgängerprodukt, allerdings ein wenig kompatibles: Das Standarddatenformat hat sich verändert, und die PAL-Programmiersprache wurde zum objektorientierten, aber inkompatiblen Object-PAL weiterentwickelt. Wer von früheren Versionen unbelastet mit der neuen Datenbank arbeitet, wird mit den Veränderungen allerdings keine Probleme haben.

Das objektorientierte Prinzip von Paradox for Windows ist simpel: Der Benutzer bearbeitet, kreiert und verändert immer nur Objekte. Das sind zunächst ganze Listen, Datenbankabfragen oder Eingabemasken. Jene bestehen dann ebenfalls aus einzelnen Objekten wie Eingabefeldern, Schriftzügen, Linien oder Buttons. Jedes solche Objekt hat seine individuellen Einstellungen, die sich durch Drücken der rechten Maustaste für das jeweils angewählte Objekt wesentlich bequemer als bei Foxpro ändern lassen. Bei einem Button wäre das etwa seine Beschriftung, seine Farbe, die Form - und seine Methoden.

Diese Methoden sind wichtig. Mit ihnen wird in Windows-Paradox (Codename "Amber) programmiert: Der Benutzer müßte in unserem Beispiel dem Button beibringen, daß er, wann immer gedrückt wird, einen ganz bestimmten Programmbefehl ausführen soll. Im Fachjargon wird dabei von ereignisgesteuerten Programmen gesprochen, da es keinen fixen Programmablauf mehr gibt, sondern bloß noch vorprogrammierte Reaktionen auf Aktionen des Benutzers. Diese Programmierweise mag ungewohnt erscheinen, ist aber bei grafischen Benutzeroberflächen unumgänglich. Auch damit lassen sich größere, eigenständige Applikationen aufbauen. Der Benutzer braucht dann nicht mehr auf die vordefinierten Datenbankfunktionen von Paradox zurückzugreifen.

Während in Foxpro for Windows in puncto Datenbank viele Dinge selbst ausprogrammiert werden müssen, nimmt Paradox for Windows dem Benutzer viel solche Arbeit ab. So kann er beispielsweise schon bei der Definition der Datenbank festlegen, welche Datentabellen auf welche Weise miteinander zusammenhängen und ob der Computer diese Verknüpfungen selbständig auf dem laufenden halten soll.

Wohl ebenso wichtig sind die unterschiedlichen Datenzugriffs-Techniken, die Borland und Microsoft einsetzen. Mittlerweile selbstverständlich ist es, daß der Benutzer auf mehr als nur ein Datenformat zugreifen kann und daß eines davon den Xbase-Standard entspricht. Beide Firmen setzen dazu eine Art Universaldatenbank-Schnittstelle ein, die aber nur für Programmierer gedacht ist. Sie übernimmt beispielsweise die Umwandlung der Datenbankabfragen in den jeweiligen SQL-Dialekt.

Bei Borland nennt sich diese Schnittstelle "Open Database API" (Odapi). Über sie kann der Programmierer von Paradox und anderen Borland-Programmen aus auf die Paradox-Formate, auf das banalere Xbase, auf diverse SQL-Datenbanksysteme wie Oracle und SQL-Server und auf das hauseigene "Interbase" zugreifen.

Interbase soll es sowohl für den Einzelplatz-PC als auch für den Einsatz im Netzwerk geben. Es soll in allen neuen Windows-Programmen von Borland zur Anwendung kommen.

Das Pendant von Microsoft nennt sich "Open Database Connectivity" (ODBC). Es unterstützt ebenfalls Paradox und Xbase, dazu Novells Btrieve und einige weitere Datenbanksysteme, auf die über ein Netzwerk zugegriffen wird (zum Beispiel Oracle, Ingres, SQI.-Server, AS/400, DB/2). Auch Microsoft hat ein eigenes relationales Datenbankformat entwickelt, das sich "Joint Engineering Technology" (Jet-Isam) nennt und in Access (siehe unten) als Stammdatenbankformat zum Einsatz kommen kann. Foxpro dagegen konzentriert sich auf Xbase. ODBC kann zwar genutzt werden, auch für SQL-Datenbanken, aber eben nur aus den Anwendungen heraus und nicht interaktiv - der Anwender muß also alles selbst ausprogrammieren. Wie schon bei Borland, soll ODBC auch seinen Weg in andere Produkte von Microsoft finden, darunter Excel, Visual Basic und C/C + + .

Welches der beiden Systeme technisch besser ist, läßt sich bisher nicht sagen. Bislang kann Microsoft für ODBC die breitere Unterstützung von Seiten anderer Datenbankanbieter vorweisen - sogar Borland mache mit, hieß es. ODBC soll denn auch wie OLE in künftigen Versionen von Windows fest eingebaut sein.

Access ist auch für Endanwender gedacht

Über Access war lange Zeit nicht viel zu lesen. Bekannt war es bestenfalls unter dem Codenamen "Cirrus". Es handelt sich - im Gegensatz zu Foxpro - um eine weitere Eigenentwicklung von Microsoft, nachdem das Datenbankprojekt "Omega" Mitte 1990 kurz vor der geplanten Einführung wegen mangelnder Erfolgsaussichten aufgegeben wurde.

Als Zielgruppe für Access haben die Microsoft-Strategen sowohl den Power-User als auch den weniger kenntnisreichen Anwender ins Auge gefaßt. Als eine Mischung zwischen Visual Basic und der ODBC-Datenbanktechnologie soll Programmieren wie in Foxpro zwar nicht nötig, aber problemlos möglich sein. Hier setzt Access auf zwei Pferde: Eine simple Scriptsprache und das etwas anspruchsvollere "Embedded Basic", mit dem sich einfache Datenbankanwendungen wie in Visual Basic entwickeln lassen. Das Programmieren läuft zwar auch ereignisgesteuert ab, geht aber weniger weit als Paradox. Insbesondere soll es in der ersten Version noch keinen Compiler gelten.

Microsoft sieht in Access weniger ein reines Datenbank-Abfrageprogramm (davon gibt es schon genug), sondern eher ein voll ausgerüstetes Entwicklungssystem für den Anwender. Um aber dessen Wissensstand zu genügen, werden viele Datenbank-funktionen, die es in Foxpro auszuprogrammieren gilt, bei Access automatisch abgewickelt, so zum Beispiel der Schreib- und Lesezugriff auf die Großrechner-Datenbank der Firma via ODBC. Denn ODBC ist nicht für den normalen Anwender ausgelegt, sondern erfordert Programmierkenntnisse. Bei Foxpro etwa muß der Programmierer genau wissen, wie die Daten auf dem Firmenrechner abgelegt sind, um darauf zuzugreifen. Bei Access nicht.

Eine mögliche Anwendung sind die virtuellen Tabellen, bei denen der Benutzer auf dem Bildschirm eine scheinbar aus einem Stück bestehende Datenbank (Tabelle) vor sich hat, diese in Wirklichkeit jedoch aus Datenbeständen unterschiedlichster Rechnersysteme und Herkunft besteht. Solche Tabellen lassen sich mit der Maus und der aus Word und Excel schon bekannten "Drag-and-Drop" Funktion zusammenstellen. Erstmals zum Einsatz kommt allerdings das Hilfesystem "Cue Cards", das dem Benutzer bei der Entwicklung seines Projekts Schritt für Schritt zur Seite steht und ihm sagt, was als nächstes zu tun ist.

Dbfast und Aspen: Nur für Entwickler

Eine andere Zielgruppe will Computer Associates ansprechen: Dbfast for Windows und der Windows-Clipper Aspen eignen sich nur für den mehr oder minder erfahrenen Programmierer. Dabei ist Dbfast auch unter Windows das, was es schon zu DOS-Zeiten war, nämlich nicht mehr als ein bloßer Dbase-Compiler, der zwar nicht weniger als 200 zusätzliche Befehle zur Programmierung einer grafischen Programmoberfläche anbietet, bislang aber keine eigentliche Entwicklungsumgebung hatte. Alles mußte mühsam von Hand ausprogrammiert werden. Immerhin soll sich das bei der kommenden Version 2.0 mit einigen grafischen Programmierhilfen bessern.

So ähnlich ist es auch mit Dbase for Windows: Die erste Version ist im Grunde ein Compiler mit nur rudimentären Programmierhilfen. Die eigentliche Entwicklungsumgebung unter Windows folgt erst in einem zweiten Schritt. Wie bei Foxpro und Dbfast wird sich der Xbase-gewohnte Programmierer in Dbase for Windows rasch zurechtfinden: Es gelten weiterhin die gleichen Befehle, nur sind jetzt eben einige Windows-Kommandos sowie die Zugriffsmöglichkeiten auf DLLs hinzugekommen.

Das System ist komplett neu geschrieben

Konnte etwa in einer Eingabemaske bisher nur mit "GET" und "SAY" gearbeitet werden, so ist jetzt ein "Button" Befehl hinzugekommen. Prozedural bleiben die Programme zwar weiterhin, aber ähnlich wie bei Clipper gibt es nun auch die objektorientierte Alternative, vor allem bei den Windows-Funktionen: Nach dem Aufruf eines Browse-Fensters kann zum Beispiel andernorts weitergearbeitet werden, ohne das Fenster wieder zu schließen.

Im Innern von Dbase for Windows hat sich fast alles verändert. Das System ist laut Borland komplett neu geschrieben worden. Dies betrifft vor allem die Datenbankmaschine. Wie schnell sie sein wird, weiß zwar noch niemand, aber einfacher als die von Foxpro erscheint sie jetzt schon: Das Dbase-Format ist geblieben, möglich ist jetzt aber auch der Zugriff auf diverse andere Formate wie Paradox und Interbase. Umstellen muß sich der Programmierer deswegen nicht: Er braucht dem "USE"-Befehl nur ein entsprechendes Kürzel anzuhängen, je nach Format. Mehrere unterschiedliche Datenbanktypen können so nebeneinander offengehalten und verknüpft werden.

Während Dbase dennoch den Eindruck einer Übergangslösung hinterläßt, erscheint Aspen aus dem gleichen Hause vielversprechender und langfristiger ausgelegt zu sein. Die Programmiersprache wird in den Grundzügen vom DOS-Clipper übernommen. Zuvor soll dieser jedoch in einer neuen Version 5.2 noch objektorientierter werden, als es schon mit der heutigen Variante 5.01 der Fall ist. Dabei unterscheiden sich Clipper und der Windows-Nachfolger Aspen ganz wesentlich von Produkten wie Foxpro oder Paradox. Mit Objekten sind nämlich nicht die Masken, Kästchen, Eingabefelder oder Buttons der Benutzeroberfläche gemeint, sondern einzelne Programmteile.

Es geht also um echtes objekt-orientiertes, mitunter auch ereignisgesteuertes Programmieren. Aspen entspricht notabene auch in anderen Belangen den klassischen Programmiersprachen wie "C". So kann der Compiler direkten Maschinencode generieren, falls der Programmierer seine Variabeln vorher definiert hat. Dann, so verspricht CA, sei die reine Programmgeschwindigkeit durchaus mit jener eines C-Programmes zu vergleichen. Aspen soll andererseits so flexibel sein, wie bisher mit dem langsameren "p-code" zu arbeiten, der erst während der Lauftzeit interpretiert wird.

Aspen gibt es auch als Client-Server-System

Auf professionelle Entwickler zugeschnitten scheint auch das Datenbanksystem von Aspen zu sein: Neben der üblichen lokalen Datenbank gibt es Aspen auch im Client-Server-Gewand. Ausgangspunkt ist erneut eine Universal-Datenbankschnittstelle. CA hatte diesen "Replacable Database Driver" (RDD) bereits bei Clipper 5.0 versprochen. Dem Programmierer präsentiert sich die Datenbank-Schnittstelle, als würde er mit einer ganz normalen Xbase-Datenbank arbeiten.

Allerdings lassen sich bei Client-Server-Datenbanken nicht alle Xbase-Befehle mühelos in SQL-Abfragen umwandeln. Aspen löst dieses Problem, in dem es SQL-Befehle innerhalb von Xbase-Befehlen zuläßt ("embedded SQL"). Die andere, bevorzugte Variante ist jedoch trickreicher: Die betreffende Datenbank wird nicht durch die normierte SQL-Sprache, sondern über eine Hintertür benutzt: Ein Aspen-eigenes Server-Programm, das Xbase-Anfragen versteht, hat direkten Zugriff.

An einer grafischen Entwicklungsoberfläche fehlt es ebenfalls nicht. Sie wurde auf die objektorientierte und ereignisgesteuerte Programmierung von Aspen abgestimmt. Wie bei Foxpro for Windows helfen Programmgeneratoren beim Entwerfen von Datenmasken, Druckerausgaben oder Menüs. Entsprechend lassen sich generierte Programme nachträglich anpassen.

Superbase ist noch marktführend

Auch "Superbase 4" kennt solche Generatoren. Das heute noch marktführende Produkt ist seit 1989 auf dem Markt und wird in diesen Wochen in Version 2.0 erscheinen. Die Anbieterfirma SRC versichert, daß nach so langer Marktpräsenz bei diesem Produkt nicht mehr mit Kinderkrankheiten gerechnet werden müsse.

Das Produkt mit dem eigenen Datenbankformat und dem eigenen, seit Version 2.0 mit Visual Basic und Access vergleichbaren Programmiersprache galt bislang allerdings nicht als besonders schnell, insbesondere bei größeren Datenbanken oder beim freien Suchen von Text.

Als Zielpublikum dürften vorwiegend Datenbankentwickler in Frage kommen, die ihre bisherigen Programme übrigens auch unter Version 2.0 weiterbenutzen können, wie die Firma angibt. Einen Compiler statt des bisherigen Runtime-Moduls hat ihnen SPC aber nicht beschert.

Gearbeitet wird mit Hilfsprogrammen, mit denen sich beispielsweise Masken sowie Dialogboxen und Berichte grafisch mit der Maus erstellen und auf Wunsch zu Programmen generieren lassen. Das geht relativ einfach. Neuerdings ist so auch eine direkte Datenbankabfrage ohne Programmierung oder Menü-Befehle möglich ("Query by Example").

Neben dem eigenen Datenbankformat können Daten jetzt gleichzeitig im Dbase- und Paradox-Format gelesen und geschrieben werden. Bisher war nur das Lesen möglich. Eine Anbindung an diverse SQL-Datenbanken bietet mit Hilfe eines Zusatzes jetzt auch Superbase, doch anders als bei Microsofts Access muß der Benutzer selbst wissen, wie in SQL programmiert wird. Superbase nimmt ihm das nicht ab.

* David Rosenthal ist freier Journalist in Basel.

Was ist wann verfügbar?

Bei Paradox for Windows hofft Borland, daß es noch ein Weihnachtsgeschenk werden wird. Dbase für Windows ist im Frühjahr zu erwarten. Microsofts Foxpro 2.5 soll um die Jahreswende für Windows und DOS verfügbar sein. Eine Mac- und Unix-Version ist für die erste Hälfte 1993 geplant. Das Schwesterprodukt Access hat Microsoft für den Herbst angekündigt.

CAs Dbfast for Windows gibt es bereits zu kaufen. Die neue Version 2.0 befindet sich aber noch im Betatest und verspricht erstmals grafische Entwicklerwerkzeuge. Der Windows-Clipper Aspen ist für den Frühling angesagt; Clipper 5.2 soll noch vor Ende des Jahres erhältlich sein. Zu diesem Termin soll auch Filemaker Pro für Windows auf den Markt kommen. Die lokalisierte deutsche Version wird für Februar 1993 erwartet. Version 2.0 von Superbase 4 von SPC soll noch 1992 herauskommen.