Document ID: /fineweb-2-swissfilter-quality_10-filterrobots/filtered/03126.jsonl.gz/1966

Kleines Web/Datenbank-Kompendium
Inhalt:
Eine einfache Datenbank auf dem Server zu haben reicht nicht. Um den Zugriff von der HTML-Seite her zu ermöglichen, braucht es mindestens 2 Applikationen: der Web-Server, welcher die HTML-Seiten bereitstellt, und der Datenbank-Server (oder DBMS), welcher den Zugriff auf die Daten ermöglicht. Zusätzlich wird dabei oft eine dazwischenliegende Applikation verwendet, das WWW-/Datenbank-Gateway (meistens ein CGI-Script), welches die Anfrage der HTML-Seite entgegennimmt und sie so zubereitet, dass sie vom Datenbank-Server verstanden wird. Ein Gateway kann ein sehr simples Programm sein.
In den letzten Monaten wurden mehrere Gateway-Produkte auf den Markt gebracht, welche tiefgehende Kenntnisse von Datenbank-Programmierung überflüssig machen und häufig HTML-Seiten UND Datenbankzugriff-Skripts generieren (Cold Fusion ist ein Beispiel für ein solches Gateway-Produkt).
Der traditionelle Weg, um von einer Webseite auf eine Datenbank zuzugreifen, ist CGI (Common Gateway Interface). Dies funktioniert wunderbar, für die Realisierung benötigt man jedoch die Kenntnis folgender Dinge:
überdies kann ein CGI-Zugriff ziemlich langsam sein. Einige "Gateway"-Produkte wurden entwickelt, um den HTML-Author vor dem Erlernen von CGI und/oder einer Datenbank-Zugriffs-Sprache zu verschonen. Es gibt auch einige Produkte, die .dll's oder integrierte Web-Server-Funktionen anstatt von CGI gebrauchen. Diese laufen in der Regel einiges schneller ab als die CGI-basierte Methode. Diese Produkte unterscheiden sich in der Menge an HTML-Programmierkenntnis, die ein Author braucht, um sie zu benutzen. Die meisten dieser Produkten benutzen ODBC (Open Database Connectivity) - ein Standard, um mit Datenbanken zu "kommunizieren". ODBC-Treiber werden von Microsoft (und anderen) angeboten, um mit SQL-kompatiblen Datenbank zu kommunizieren. ODBC-Aufrufe sind normalerweise langsamer als die ursprünglichen Datenbank-Anfragen, aber sie können oft nützlich sein, wenn man die Datenbankmanagment-spezifische Sprache nicht kennt, oder man etwas will, welches auf verschiedenen Datenbanken läuft, und man den Code nicht für jedes Programm ändern möchte.
Um nun vom Web auf eine Datenbank zuzugreifen, braucht man
In den letzten Jahren sind auch immer mehr integrierte Internet-/Datenbank-Server in
Mode gekommen. Oracle hat einen für UNIX. Microsoft offeriert den Internet Information
Server (IIS) mit SQL-Server-Option für Windows NT.
Falls ein MS SQL-Server ausserhalb Ihres Budgets liegt, gibt es noch Alternativen:
2.1 Microsoft Access: Why not?
Für kleinere Datenbanke (bis zu 10'000 Datensätzen) ist Access in einer Windows NT-Umgebung in Sachen Kosten und Integrierbarkeit schwer zu schlagen. In Microsoft Office Professional ist Access bereits enthalten, man kann es aber auch separat kaufen. Access 97 und 2000 haben eigene Internet-Assistenten.
Mit Hilfe von Active Server Pages (ASP) werden dabei zwischen die HTML-Anweisungen Skripte eingebunden, die serverseitig ausgeführt werden. Der Server wertet die Skripte aus und schickt dann nur noch die Ergebnisse in Form von HTML an den Browser. Als Skriptsprachen kann hier z.B. VBScript oder JScript eingesetzt werden.
Anschauliche Beispiele, wie man eine Datenbank via ASP ins Netz stellt, wird einem bei Hotwireds
Webmonkey oder auf deutsch bei Stefan Falz erklärt.
Zu beachten ist jedoch, dass für das Funktionieren von ASP auf dem Server auch die entsprechenden ASP-Erweiterungen installiert werden müssen. Diese sind jedoch in der Zwischenzeit nicht nur für Microsofts hauseigenen IIS erhältlich, sondern sogar auch für Webserver wie den Apache.
Eine grosse Bedeutung für die Anbindung an Datenbanken (Access, SQL-Server) mit ASP kommt hier der Entwicklungsumgebung Visual InterDev von Microsoft zu, welches man sicher auch noch kurz erwähnen sollte. Das Tool ist in die Visual-Studio-Umgebung integriert und kommt mit einem Query-Designer, womit man einen direkten Zugriff auf ODBC-Datenbanken. Die Felder lassen sich damit wie in Access selbst auf die Schnelle zusammenstellen und können mit Parametern versehen werden. Durch die umfassenden Funktionalitäten ist es ein bischen komplex in der Bedienung, und daher hauptsächlich für Programmierer geignet.
Ein zusätzliches Plus für Access: tausende von Leuten benutzen Access, d.h. es gibt überall Unterstützung. Die Gesamtkosten sind ziemlich niedrig, und man bekommt für sein Geld eine Menge Leistung.
WODA ist in Perl geschrieben, und läuft daher nicht nur auf UNIX / Linux, sondern auch auf Windows NT und 9x. Es ist, wie Perl auch, freie Software, die verändert und weiterverteilt werden kann. Ein weiterer positiver Punkt: Es ist nicht so speicherintensiv wie andere Konkurrenten.
Wenn Sie die Datenbank installiert haben, brauchen Sie noch einen Weg, um mit der Web-Seite kommunizieren zu können.
Falls Sie den IIS benutzen, stellt Ihnen Microsoft eine Anzahl spezielller Server-Optionen zur Verfügung, um auf den Datenbank-Server zugreifen zu könnnen, wie zum Beispiel Active Server Pages.
Sie können aber auch Ihr eigenes CGI-Programm benutzen, welches Sie in irgendeiner Sprache geschrieben haben.
Oder Sie benutzen ein Gateway-Produkt, welches die Datenbank-Aufrufe für Sie
vereinfacht. Ein Beispiel für ein solches Produkt wurde oben schon erwähnt: Cold Fusion.
Dies ist ein sehr nützliches Tool, aber es ist nicht ganz gratis. Die Lizenzgebühr ist
ab $ 400.-- erhältlich, und dabei hat man noch keine Datenbank, erst die
Web-to-Database-Schnittstelle.
Cold Fusion ist eine erweiterte Version des HTML-Editors HomeSite. Für die Ansteuerung der Datenbank hat Allaire die Cold Fusion Markup Language (CFML) konzipiert. Dabei handelt es sich um eine stark an die Syntax von HTML angelehnte Sprache, die ebenfalls mit Tags und Attributen arbeitet. Wer HTML kennt, wird deshalb auch sehr schnell mit CFML zurechtkommen. Es ersetzt aber nicht die Kenntnis von SQL - eine falsche Abfrage ergibt noch immer ein falsches Resultat. Ein grosser Pluspunkt ist der, dass man nicht CGI-Wissen zu erarbeiten hat.
Einige Features von Cold Fusion: Nutzung von Datenbank-Sicherheitsfunktionen, verschiedene Befehle für das File-Management, sowie der Berichtsgenerator Crystal Reports 5.0. Es lassen sich auch Boolsche Ausdrücke, Looping-, über 130 Datums-, Zeit-, Listen- und Stringfunktionen einbinden. Auch ActiveX, JavaScript und Java wird unterstützt.
In der Enterprise Edition wird ODBC, OLE DB, CORBA, Sybase und Oracle unterstützt; die Professional-Ausgabe arbeitet mit Desktop-DBs wie Access, Foxpro, Paradox und Sybase.
Für eine Umgebung, in der mehrere Leute Abfragen generieren, und man nicht jede Person in CGI ausbilden möchte, ist Cold Fusion sicher eine gute Lösung. Nützlich ist es z.B. für ISP's oder in einer Intranet-Umgebung. Für einen einzelnen Entwickler und für eine einzelne Site ist es wahrscheinlich günstiger und effizienter, wenn der Entwickler CGI lernt oder ein günstigeres Produkt wählt.
Cold Fusion ist ein CGI-Umwandler, und es greift via ODBC auf eine SQL-DB zu. Eine native Schnittstelle bringt in den meisten Fällen im Back End-Bereich die grössere Performance, während pures CGI im Front End schneller ist.
Es gibt noch über 100 ähnliche Produkte, die meisten davon benutzen ODBC für den Zugriff auf eine ODBC-kompatible SQL-Datenbank, wie Access, FoxPro, msSQL, Oracle, Ingres, Progress etc.
Einige benutzen auch 'native calls', welches sich positiv auf die Performance auswirkt. Andere benutzen die Schnittstelle von Netscape (NSAPI) oder Microsoft (ISAPI).
Nachfolgend noch einige Beispiele für solche Produkte:
Odars2Web "Klick... klick... klick und fertig ist die Datenbank fürs Internet"
Der Kölner Herstelller Infoware hat eines der besten Werkzeuge, um Datenbanken
(Access, Oracle, dBase, Text, Excel) narrensicher ins Internet zu bringen. Das Ergebnis
mit Bildintegration, Suchformularen und eine klare Benutzerführung lässt sich sehen.
Leider kann jedoch die Installation einige Tücken bergen, und auch die Dokumentation ist
nicht sehr umfangreich.
WebHub Delphi-Entwicklungsumgebung für Website-Entwicklung
Vom Gateway-Prinzip ähnlich wie Cold Fusion. Es ist jedoch hauptsächlich für Delphi-Entwickler gedacht. Basiert auf Borlands DB-Managment. Raffiniert, falls man Delphi kennt, unverständlich, falls nicht. Kosten: $ 700.
Tango Enterprise Cross-Plattform-Entwicklungsumgebung
Auch Tango hat ähnliche Funktionen wie Cold Fusion, ist aber laut Hersteller einfacher
zu bedienen. Besteht aus Development Studio und Application Server. Plattformen: Windows,
Solaris, AIX und MacOS, unterstützt ODBC und Oracle. Im Lieferumfang enthalten ist die
SQL-Datenbank von Pervasive.