vorheriges KapitelInhaltsverzeichnisStichwortverzeichnisFeedbacknächstes Kapitel


Tag 8

Mac und Windows-PC für die Datenbankanbindung fit machen

Damit Sie von UltraDev aus mit Datenbanken arbeiten können, muss auf Ihrem Rechner bzw. in Ihrem Netzwerk bereits ein Datenbanksystem eingerichtet sein, auf das Sie zugreifen können. Sämtliche Programmfeatures, die Sie in den nun folgenden Tagen kennen lernen werden, setzen zwingend voraus, dass Sie eine Datenbankanwendung installiert haben. Das heutige Kapitel ist absolut grundlegend, denn auf diesen Stoff bauen alle weiteren Lektionen auf. Die Themen im Überblick:

8.1 Datenbankverbindungen

Da wir uns mit unterschiedlichen Plattformen auseinander setzen werden, ist der Text im Anschluss an diese allgemeine Einführung entsprechend in Abschnitte gegliedert. Die gemachten Ausführungen gelten entweder plattformübergreifend oder plattformspezifisch, worauf jeweils hingewiesen wird. Manche Unterkapitel beschäftigen sich speziell mit ASP (Active Server Pages), JSP (Java Server Pages) oder ColdFusion-Anwendungen. Ich möchte Ihnen nahe legen, keinen der Abschnitte zu überspringen, denn diese Informationen könnten Ihnen auch bei der Arbeit mit anderen Anwendungen als UltraDev nützlich sein.

Wenn Sie in einer reinen Mac- bzw. Windows-Umgebung arbeiten oder sich nur für eine bestimmte Serverplattform interessieren, steht es Ihnen natürlich frei, lediglich die diesbezüglichen Abschnitte zu lesen.

Für die heutige Lektion wird davon ausgegangen, dass Sie bereits einen Datenbankserver installiert haben und Erfahrung in der Erstellung von Datenbanken besitzen. Wenn nicht, arbeiten Sie bitte zuerst die Ausführungen über die Installation des MySQL-Servers am Ende der heutigen Lektion durch. Danach haben Sie das nötige Grundlagenwissen, um Ihr UltraDev-Backend einzurichten.

Wenn Sie mit UltraDev dynamische Seiten erzeugen, müssen Sie dem Programm bestimmte Informationen geben, damit es den Anwendungsserver mit einer Datenbank verbinden kann. Je nach Voreinstellung werden Sie eine Webanwendung vielleicht auf Basis einer lokalen Datenbank entwickeln und sie dann auf den Produktionsserver stellen, auf dem eine eigene Datenbankverbindung eingerichtet ist. In diesem Fall müssen Sie Ihre Datenbank lokal genauso konfigurieren wie auf dem entfernten Server.

Die Alternative wäre, die Applikation gleich in Anbindung an die Datenbank auf dem Produktionsserver zu entwickeln. So oder so ist die Einrichtung einer Datenbankverbindung nicht schwierig, und für den Fall, dass Sie mit einer Datenbank auf dem entfernten Server arbeiten, braucht Ihr lokaler Rechner nicht einmal einen eigenen Treiber, denn UltraDev verwendet den Treiber des Servers, um die Daten lokal verfügbar zu machen.

Falsch konfigurierte Datenbankverbindungen sind eine häufige Fehlerquelle. In der Folge kommuniziert UltraDev mit einer Datenbank, die lokal anders konfiguriert ist als auf dem Produktionsserver. UltraDev kann dann zwar problemlos auf die Datenbank zugreifen und in der Dokumentansicht funktioniert scheinbar auch alles bestens. Laden Sie das Dokument dann allerdings zur Vorschau in den Browser oder übertragen es auf den Server, funktionieren die dynamischen Verhaltensweisen nicht mehr. Der entscheidende Punkt ist wie gesagt, dass Sie, falls Sie mit lokalen Datenquellen arbeiten, diese genauso wie auf dem Anwendungsserver konfigurieren.

Eine Datenbankverbindung einrichten (Mac/Win)

Sie können theoretisch pro Website mehrere Datenbankverbindungen einrichten, doch gewöhnlich arbeitet man nur mit einer. Die Verwendung mehrerer verschiedener Datenquellen ist durchaus zulässig, und Sie könnten sogar eine Website anlegen, die Daten von verschiedenen, voneinander unabhängigen Servern bezieht.

Um eine dynamische Website einzurichten, definieren Sie wie gewohnt eine neue Site, doch bevor Sie das Konfigurationsmenü verlassen, aktivieren Sie im Listenfeld Kategorie die Option Anwendungsserver (siehe Abb. 8.1). Wählen Sie ein Servermodell (ASP, JSP oder ColdFusion) aus, die Standard-Skriptsprache, in der die Anwendung geschrieben werden soll, sowie die zu verwendende Standard-Seitenerweiterung. Darüber hinaus können Sie noch einige Zugriffsinformationen definieren.

Abbildung 8.1:  Einrichten des Servermodells, der Skriptsprache und des Speicherorts

UltraDev trägt der Tatsache Rechnung, dass Sie Ihre dynamische Anwendung vielleicht auf einem anderen Server ablegen möchten als die übrige Website. Über die Anpassung der Einstellungen unter Zugriff und Entfernter Ordner können Sie einen anderen Speicherort definieren. Diese Einstellungen entsprechen denen, die wir in Tag 3, »Websites planen und verwalten«, bei der Definition des entfernten Ordners auf dem Server vorgenommen haben. Wenn Sie hier nichts anderes eingeben, geht UltraDev davon aus, dass der Anwendungsserver und der entfernte Server identisch sind.

Sie können sich die Dateien auf dem Anwendungsserver anzeigen lassen, indem Sie in der Site-Ansicht in der Werkzeugleiste auf das zweite Icon von links (kleine Quadrate mit einem Blitz) klicken. Falls entfernter Server und Anwendungsserver identisch sind (was meistens der Fall sein dürfte), erfüllt diese Schaltfläche keine weiteren Funktionen.

Nachdem Sie die neue Website eingerichtet und ein Anwendungsserver-Modell gewählt haben, richten Sie im nächsten Schritt die Datenbankverbindung ein. Bei der Auswahl des für Ihre Serverplattform geeigneten Verbindungstyps unterstützt Sie das Programm durch verschiedene Dialogfenster. Es stehen folgende Verbindungstypen zur Auswahl:

An diesem Punkt entringt sich der Brust des Mac-Users gewöhnlich ein tiefer Seufzer der Klage: »Unter Windows hat man viel mehr Typen der Datenbankverbindung zur Auswahl als auf dem Mac. Das ist gemein!« (Als Powerbook-Benutzer kann ich in diese Klage nur einstimmen.) Doch gibt es eine Möglichkeit, Verbindungen zu Datenbanken herzustellen, für die nur Windows-ODBC-Treiber verfügbar sind. Macromedia hat UltraDev so programmiert, dass Datenbankverbindungen über den Anwendungsserver selbst erfolgen können. Wenn Sie also Ihre Sites auf einem Mac entwickeln, stehen Ihnen trotzdem sämtliche Verbindungstypen zur Verfügung. Zusätzlich können Sie sich noch per JDBC- Treiber mit Windows-Datenquellen verbinden, was ein weiteres Plus an Verbindungsoptionen darstellt.

So, und jetzt wollen wir endlich unsere erste Datenbankverbindung erstellen. Wenn Sie Ihre Website richtig konfiguriert und Servermodell und Zugriffsmethode korrekt gewählt haben, kann es losgehen.

Eine Datenbankverbindung kreieren

Um für Ihre Site eine Datenbankverbindung einzurichten, wählen Sie Modifizieren > Verbindungen, worauf sich das in Abb. 8.2 gezeigte Dialogfenster öffnet. Wenn Sie bis dato noch keine Datenbankverbindung in UltraDev eingerichtet haben, ist das Listenfeld leer. Wurden bereits Verbindungen definiert, können Sie sie hier durch Klick auf die entsprechende Schaltfläche bearbeiten, duplizieren oder entfernen.

Abbildung 8.2:  Das Dialogfenster zur Einrichtung und Bearbeitung von Datenbankverbindungen

Oftmals ist es leichter, eine bereits definierte Datenbankverbindung zu duplizieren, statt eine neue einzurichten, falls diese neue Verbindung ähnlich der schon vorhandenen ist. Ich habe meistens die Syntax für einen JDBC-Verbindungsstring nicht im Kopf und muss dann meine Kenntnisse anhand eines bereits definierten Strings auffrischen.

Klicken Sie auf den Button Neu, um eine neue Datenbankverbindung einzurichten. Je nach gewähltem Servermodell wird ein Popup-Menü angezeigt, über das Sie die Verbindungstypen konfigurieren können. Im Folgenden werden wir die einzelnen Einstellungsmöglichkeiten, nach Anwendungsservern getrennt, näher untersuchen. Gehen Sie zum Abschnitt für Ihre Plattform und lesen Sie dort, wie Sie für Ihre Site eine Datenbankverbindung einrichten.

Data Source Name (ASP)

Default-Verbindungstyp ist eine ADO/ODBC-Verbindung, die einen Data Source Name (DSN) verwendet. Um einen Data Source Name zu vergeben, muss eine ODBC- Datenquelle für diesen Server und diese spezielle Datenbank definiert worden sein. Wenn Sie noch nie eine ODBC-Verbindung eingerichtet haben, sollten Sie unbedingt das entsprechende Unterkapitel am Ende dieser Lektion lesen, in dem die Einrichtung eines einfachen Datenbankservers und das Zusammenspiel mit UltraDev beschrieben wird. Neben den Anweisungen zur Installation des Servers wird auch die Einrichtung einer ODBC-Verbindung zu diesem Server beschrieben.

Wie in Abb. 8.3 zu sehen, müssen Sie für eine Grundverbindung fünf Eingabefelder konfigurieren:

Unter Windows können Sie Datenquellen nicht nur über das Popup-Menü auswählen. Klicken Sie auf die Schaltfläche Definieren, um das ODBC-Dialogfenster zu öffnen. Nun können Sie einen neuen DSN für Ihren lokalen Rechner definieren.

Auf dem Mac werden zwar lokale ODBC-Verbindungen unterstützt, aber UltraDev macht von diesem Feature keinen Gebrauch. Falls UltraDev auf Mac OS X portiert wird, werden verbesserte Netzwerkfunktionen und damit auch ODBC-Verbindungen zur Verfügung stehen.

Abbildung 8.3:  DSN-Verbindungen werden zu bereits existenten ODBC-Datenquellen eingerichtet.

Bei der Konfiguration einer ODBC-Datenquelle werden zusammen mit dem DSN oft auch gleich ein Benutzername und ein Kennwort definiert. So müssen nicht noch einmal extra Benutzername und Kennwort vergeben werden, wenn eine Anmeldeseite eingerichtet wird.

Wenn Sie alle Einstellungen vorgenommen haben, klicken Sie auf OK oder auf Testen, um zu überprüfen, ob eine funktionierende Verbindung eingerichtet wurde. Damit steht Ihre Datenbankverbindung. Wenn Sie möchten, können Sie die folgenden Abschnitte lesen, um mehr über andere Arten von Datenbankverbindungen zu erfahren.

Benutzerdefinierte Datenbankverbindungen (ASP-Server)

Datenbankverbindungen über einen benutzerdefinierten Verbindungsstring einzurichten geht nicht ganz so bequem wie unter Verwendung eines DSN. Allerdings können Sie bei der Wahl des Speicherorts und der Einstellung anderer datenbankspezifischer Parameter wesentlich flexibler verfahren und müssen keine lokale ODBC-Datenquelle definieren. Da die einzelnen Parameter des Verbindungsstrings vom gewählten Datenbankserver abhängig sind, müssen Sie bei Einrichtung dieses Verbindungstyps die Dokumentation zu Ihrer Datenbank zu Rate ziehen. Abb. 8.4 zeigt das Dialogfenster zur Konfiguration des Verbindungsstrings.

Für diesen Verbindungstyp müssen Sie lediglich zwei Eingabefelder ausfüllen: Verbindungsname, d.h. den Verbindungsnamen, den UltraDev verwendet, und Verbindungsstring. Den Aufbau und die genaue Syntax des ADO-Verbindungsstrings müssen Sie dem Handbuch zu Ihrer Datenbank entnehmen. Sie können zwei Arten von Verbindungsstrings definieren: mit DSN und ohne DSN. Die DSN-Variante ist lediglich eine Spielart des eben besprochenen Verbindungstyps. Hier genügt für den Verbindungsaufbau allerdings bereits die Angabe des Data Source Name und optional von Benutzernamen und Kennwort.

Abbildung 8.4:  Über Strings lässt sich eine Datenbankverbindung einrichten, ohne dass zuvor ein ODBC-DSN definiert wurde.

Ein Verbindungsstring dieses Typs zu einer ODBC-Datenquelle namens mydatabase mit dem Benutzernamen myname und dem Kennwort mypassword würde folgendermaßen aussehen:

dsn=mydatabase;uid=myname;pwd=mypassword;

Ein DSN-loser Verbindungsstring dagegen speichert wesentlich mehr Informationen. Er enthält sämtliche Angaben, die zur Verbindung mit einer ODBC-Datenquelle gebraucht werden. Ein DSN-loser Verbindungsstring zu einer Access-Datenbank mit Namen mydatabase.mbd auf Laufwerk c:\ wäre folgendermaßen aufgebaut:

DRIVER={Microsoft Access Driver (*.mdb)};DBQ=c:\mydatabase.mdb

Anders als eine Verbindung zu bereits existenten Datenquellen hängt ein ADO- Verbindungsstring von den speziellen Datenbank-Features ab, die Sie einsetzen wollen. Schlagen Sie wegen näherer Informationen über die unterstützten Verbindungsattribute im Handbuch zu Ihrer Datenbank nach.

Ähnlich wie bei der Datenbankverbindung über DSN können Sie auch hier wählen, ob die Verbindung über einen Treiber auf dem Anwendungsservers oder einen lokalen Treiber erfolgen soll. Mac-Usern steht nur die Verbindung über den Anwendungsserver zur Verfügung.

ColdFusion-Datenquellen (ColdFusion)

ColdFusion verwaltet Datenbanken anders als andere Programme. Datenbanken werden direkt in der ColdFusion-Umgebung definiert und unabhängig von Standard-ODBC- Verbindungen verwaltet. Um eine ColdFusion-Datenquelle einzurichten, wählen Sie Modifizieren > Verbindungen > Neu > Data Source Name (DSN). Abb. 8.5 zeigt die Dialogbox zur Konfigurierung einer ColdFusion-Datenquelle.

Dieses Dialogfenster sieht der Palette zur Definition von ODBC-Verbindungen verblüffend ähnlich. Der einzige Unterschied besteht im Eingabefeld DSN. Wenn Sie die Option Mithilfe des DSN auf dem Anwendungsserver wählen, müssen Sie auf Anmeldung klicken, um sich auf dem ColdFusion-Server einzuloggen und sich eine Liste der verfügbaren Datenquellen anzeigen zu lassen.

Abbildung 8.5:  Bei der Definition der Datenbankverbindung auf die Verwendung von ColdFusion-DSN achten

Ähnlich wie ODBC-DSNs speichern auch ColdFusion-DSNs Benutzernamen und Kennwort für gewöhnlich mit. Wenn Sie Ihren DSN mit diesen Angaben definiert haben, können Sie die Eingabefelder Benutzername und Kennwort frei lassen.

Wenn Sie nicht ständig freien Zugriff auf den Datenbankmanager des ColdFusion-Servers haben, können Sie Ihre Anwendungen unter Verwendung eines ODBC-DSN auf Ihrem Arbeitsrechner entwickeln. Diese Option ist bei der Konfigurierung von ColdFusion- Verbindungen standardmäßig voreingestellt. Über die Optionsfelder UltraDev soll Verbindung herstellen können Sie zwischen der Verwendung von lokalen DSNs (ODBC) und ColdFusion-ODBCs (Anwendungsserver) wählen.

Da auf dem Mac keine Verbindung zu lokalen ODBC-Datenquellen möglich ist, müssen Sie in diesem Fall Modifizieren > Verbindungen > Neu > Data Source Name- Advanced wählen. Dieses Dialogfenster ist im oberen Teil identisch mit der bereits bekannten Dialogbox, enthält aber noch zusätzlich Eingabefelder, um einen JDBC- Treiber zur Verbindung mit lokalen oder Netzwerk-Datenbanken zu konfigurieren. Näheres zu den hier erforderlichen Einstellungen erfahren Sie im folgenden Abschnitt über JDBC-Verbindungen.

JDBC-Verbindungen (JSP-Server)

Der letzte mögliche Verbindungstyp ist die JDBC-Verbindung. Haben Sie JSP als Serverplattform gewählt, zeigt Ihnen ein Klick auf Ändern > Verbindungen > Neu sämtliche auf Ihrem System installierten JDBC-Treiber an. Wird der gewünschte Treiber nicht angeboten, wählen Sie Benutzerdefinierte JDBC-Verbindung. Sie bekommen dann eine leere Konfigurationsmaske angezeigt. Dieser Verbindungstyp ist am schwierigsten einzurichten. Abb. 8.6 zeigt das Dialogfenster für einen MySQL-Treiber. Die Einstellungen lehnen sich etwas an den benutzerdefinierten Verbindungsstring an und erlauben die Anpassung der einzelnen Verbindungsparameter, die für den Zugriff auf entfernte Datenbanken gesetzt werden müssen.

Abbildung 8.6:  Nicht gerade anwenderfreundlich: JDBC-Treiber

Wie bei den anderen Verbindungstypen auch, müssen Sie der Verbindung einen Namen zuweisen, damit UltraDev sie erkennt. Sie müssen ferner einen Benutzernamen und ein Kennwort für den Datenbankzugriff vergeben. So weit ist also alles wie gehabt, doch gibt es zwei weitere Eingabefelder, die der Erklärung bedürfen:

Die Verbindung testen

Nachdem wir eine Verbindung definiert haben, sollten wir zu guter Letzt noch testen, ob UltraDev nun auch wirklich mit der Datenbank kommunizieren kann. Der einfachste (und unspektakulärste) Weg ist ein kurzer, trockener Klick auf den Button Testen im Fenster Verbindung definieren. Hat alles geklappt, wird das Dialogfenster Verbindung wurde erfolgreich hergestellt angezeigt, wie in Abb. 8.7 zu sehen.

Abbildung 8.7:  Der erfolgreiche Verbindungsaufbau wird durch dieses lakonische Fenster signalisiert.

Konnte kein Verbindungsaufbau erfolgen, erhalten Sie eine detaillierte Fehlermeldung der folgenden Art:

Wenn Sie einen ODBC-Treiber für Ihre Datenbankverbindung verwenden und eine Benutzername/Kennwort-Fehlermeldung erhalten, sollten Sie sich vergewissern, ob Sie den ODBC-DSN korrekt konfiguriert haben. Vielleicht haben Sie im Konfigurationsmenü Namen oder Passwort falsch eingegeben. Wenn Sie noch keinen ODBC-Treiber eingerichtet haben, möchte ich Sie noch einmal daran erinnern, sich mit dem Kapitel MySQL und ODBC-Treiber am Ende dieser Lektion zu befassen.

Gehen wir einmal ganz optimistisch und zuversichtlich davon aus, dass der Verbindungstest positiv war. Wenn nicht, müssen Sie wohl oder übel noch einmal alle Einstellungen durchgehen und genau überprüfen. Wenn Sie hier keine Fehler entdecken können, könnte das Problem beim Datenbankserver selbst liegen, vor allem wenn Sie sich mit einer Datenbank auf einem entfernten Server verbinden. Die meisten Datenbankserver können den Zugang IP-abhängig sperren. Es ist sogar so, dass die meisten Datenbankserver den Zugriff für sämtliche Anwender zunächst einmal grundsätzlich sperren und erst im Bedarfsfall freigeben. In solchen Fällen müssten Sie zunächst einige Einstellungen an der Datenbank selbst verändern, bevor Sie darauf zugreifen können.

Eine Testabfrage durchführen

Unsere Verbindung wurde also erfolgreich aufgebaut und wir könnten so weit ganz glücklich sein. Aber ist dieses kleine graue Mitteilungsfenster wirklich alles, was wir uns vom Leben erhofft haben? Nein! Wenn Sie mit eigenen Augen sehen wollen, dass Sie nun wirklich mit Ihrer Datenbank verbunden sind, schließen Sie zunächst die Fenster Verbindungen definieren und Verbindungen. Öffnen Sie nun in der Dokumentansicht eine neue Datei. Das Dokument kann ruhig leer sein, wir müssen nur ein Serververhalten hinzufügen, um überprüfen zu können, ob die Verbindung wirklich aktiv ist.

  1. Öffnen Sie die Palette Serververhalten.
  2. Klicken Sie auf das Plussymbol (+), um dem Dokument ein neues Verhalten zuzuweisen.
  3. Wählen Sie den Befehl Datensatzgruppe (Abfrage).
  4. Wählen Sie in der nun geöffneten Dialogbox im Popup-Menü Verbindung die Verbindung, die Sie gerade eingerichtet haben.
  5. Wählen Sie aus dem Popup-Menü Tabelle eine Tabelle aus Ihrer Datenbank. Diese Tabelle sollte bereits mit einigen Daten gefüllt sein.
  6. Klicken Sie zuletzt auf die Schaltfläche Testen.

Die Testabfrage einer Datensatzgruppe (siehe Abb. 8.8) ist in der Tat ein weit befriedigenderer Beweis dafür, dass unser Bemühen nicht fruchtlos war.

Abbildung 8.8:  Die Testabfrage einer Datensatzgruppe zeigt die tatsächlichen Daten einer Tabelle an.

Das sollte eigentlich Beweis genug sein, dass die Dinge tatsächlich funktionieren wie behauptet. Wenn nicht, dann harren Sie der morgigen Lektion.

8.2 Java/ODBC-Verbindung einrichten
(Macintosh/Windows NT)

Datenbanken werden auf dem Mac bisher eher wenig unterstützt. Es gibt zwar einen ODBC-Treiber-Manager, aber dieser führt ein ziemliches Schattendasein. Die meisten Mac-User wissen nicht einmal, dass er überhaupt existiert. Diese Verhältnisse könnten sich allerdings mit der Einführung von Mac OS X ändern, das dank seiner verschiedenen UNIX-Unterbauten mit einer guten ODBC-Unterstützung kommt.

Doch gibt es auch für all diejenigen, die ihr altes Mac OS weiter verwenden wollen, eine Möglichkeit, UltraDev für die Entwicklung dynamischer Websites einzusetzen: ein JDBC/ ODBC-Gespann, das per RmiJdbc-Treiber aneinander gekoppelt wird.

Dieses kleine Stückchen Software verlinkt zwei JDBC-Treiber miteinander. Im Zusammenspiel mit einem JDBC-ODBC-Treiber auf einem Windows NT-Rechner kann ein Mac mithilfe dieses Treibers auf Datenquellen unter NT zugreifen. Windows NT fungiert als Übersetzer zwischen den ODBC-Treibern auf dem Rechner und der JDBC- Verbindung zum Mac. Somit steht jede auf dem NT-Server verfügbare ODBC- Datenbankverbindung nun auch auf dem Mac als JDBC-Datenquelle zur Verfügung. Als weitere Konsequenz stehen damit auch auf dem Mac die meisten Datenbanken für die Entwicklung von ColdFusion- und JSP-Anwendungen offen. Abb. 8.9 veranschaulicht das Zusammenspiel der verschiedenen Treiber.

Abbildung 8.9:  Der ODBC-JDBC-Treiber fungiert als Übersetzer und öffnet dem Mac den Weg in eine größere Datenbankwelt.

Den Macintosh-JDBC-Client-Treiber installieren

Dann wollen wir zur Tat schreiten. Voraussetzung ist, dass Sie neben Ihrem Mac auch noch einen NT-Server besitzen und dass beide Rechner miteinander vernetzt sind. Als NT- Rechner genügt ein alter Pentium 90. Für den Übersetzungsdienst ist dessen Leistung ausreichend.

Auf dem Mac müssen Sie folgende Installationsschritte durchführen:

Kopieren Sie die Datei RmiJdbc.jar von der UltraDev-CD auf die Festplatte. Sie können auch die aktuellste Version des Treibers als gepackte Datei aus dem Internet herunterladen:

http://www.objectweb.org/RmiJdbc/rmijdbcDownload.htm

Macromedia gibt im Handbuch zu UltraDev eine andere Download-Adresse für den RmiJdbc-Treiber an. Unter diesem Link liegt die Macromedia-Version des Treibers. Der Link, den ich im Buch angebe, führt zur Homepage der RmiJdbc-Entwickler. Ich empfehle Ihnen, auf dieser Website vorbeizuschauen, egal woher Sie Ihren Treiber beziehen, denn auf dieser Seite finden Sie wertvolle Informationen.

Nebenbei bemerkt funktioniert dieser Treiber nicht nur auf dem Mac. Sie können ihn immer verwenden, wenn Sie über Netzwerk auf einen anderen JDBC-Treiber zugreifen möchten (in diesem Fall den JDBC-ODBC-Treiber von Sun).

Nun müssen den Treiber noch im richtigen Verzeichnis installieren - im Systemordner unter Extensions > MRJ Libraries > MRJClasses (siehe Abb. 8.10).

Abbildung 8.10:  Der Ordner MRJClasses: Hier werden der RmiJdbc- und alle anderen Java-Treiber installiert.

Falls dieser Ordner auf Ihrem Rechner nicht existiert, haben Sie vermutlich nicht die richtige Version des Macintosh Runtime for Java installiert. Dem lässt sich aber leicht abhelfen, da auf der UltraDev-CD die aktuellste Version des MRJ installiert ist. Alternativ können Sie sich die letzte Version bei Apple herunterladen:

http://asu.info.apple.com/

Nachdem Sie die .jar-Datei mit dem JDBC-Treiber im richtigen Verzeichnis installiert haben, sollten Sie den Rechner neu starten, damit das System den Treiber erkennt. Danach ist der Treiber einsatzbereit. Nach dem Neustart können Sie mittels RmiJdbc- Treiber eine Datenbankverbindung einrichten. Eine korrekt konfigurierte Verbindung sehen Sie in Abb. 8.11.

Abbildung 8.11:  Konfigurieren Sie in UltraDev den RmiJdbc-Treiber, um auf den NT-Server zugreifen zu können.

Folgende Parameter müssen Sie in die Eingabefelder eintragen. Sie müssen auch die Design-Zeit-Einstellungen entsprechend diesen Werten verändern:

Wenn Sie zum ersten Mal einen JDBC-Treiber auf einem Mac einrichten, könnte Ihnen beim Anblick des Eingabefeldes Treiber vielleicht der Gedanke kommen, dass es sich hier um eine bestimmte Datei handelt, die an einem bestimmten Ort auf dem Rechner gespeichert ist. Doch ein Suchlauf mit Sherlock fördert nichts zu Tage. Die .jar-Datei, die Sie zuvor installiert haben, ist eine Archivdatei, die eine oder mehrere Java-Klassen enthält, die zusammen den Treiber bilden. Wenn Ihr System einen JDBC-Treiber anfordert, durchsucht es die .jar-Datei nach den benötigten Klassen. Das klingt vielleicht etwas ungewohnt, aber es funktioniert.

Nachdem Sie Ihren Mac eingerichtet haben, müssen Sie sich um den NT-Server kümmern, der die ODBC-Datenquelle verwaltet und sie dem Mac zur Verfügung stellt. Die Konfiguration der NT-Server-Seite ist etwas aufwändiger, fassen Sie sich daher in Geduld, wenn nicht alles gleich beim ersten Mal klappt.

Den Windows NT-JDBC-ODBC-Server konfigurieren

Für diesen Abschnitt wird davon ausgegangen, dass Sie Windows NT 4.0-Server und mindestens Service Pack 4 installiert haben. Wenn Sie NT frisch aufgespielt haben, um dessen JDBC/ODBC-Übersetzungsdienste zu nutzen, sollten Sie unbedingt erst die erforderlichen Service Packs installiert haben, bevor Sie weitere Schritte unternehmen.

Damit der NT-Rechner als Übersetzer zwischen einer ODBC-Datenquelle und einem Mac mit RmiJdbc-Treiber fungieren kann, muss zunächst auf der Windows-Maschine ein funktionierender ODBC-Treiber eingerichtet werden. Bevor diese Voraussetzung nicht gegeben ist, wäre es ziemlich unklug, irgendwelche weiteren Schritte zu unternehmen. Eine falsch konfigurierte ODBC-Datenquelle kann das Leben zur Hölle machen, wenn Sie in einem Client-Server-Pool nach Fehlern in der JDBC-ODBC-Verbindung suchen müssen. Falls Sie noch nie einen ODBC-Treiber konfiguriert haben, sollten Sie zuerst den entsprechenden Abschnitt am Ende des Kapitels über die Verbindung einer ODBC- Datenquelle mit einer MySQL-Datenbank lesen. Dort wird die Installation einer MySQL- Datenbank beschrieben sowie die Konfiguration der ODBC-Verbindung.

Zweitens müssen Sie auf Ihrem NT-Rechner Java installieren. Hierzu müssen Sie sich lediglich den Java-Installer 1.1.8 von der Sun-Website herunterladen:

http://java.sun.com/products/jdk/1.1/jre/download-jre-windows.html

Java 1.1.8 ist die jüngste Version der 1.1-Java-Implementierung. Haben Sie Java 2 (1.2) installiert oder möchten es verwenden, sollte es keine Probleme geben. Die Version 1.1.8 ist die Version von Java, die von allen Plattformen (Windows, Mac, Linux) unterstützt wird. Die Version 2.0 leidet noch an gewissen Kinderkrankheiten, aber man darf davon ausgehen, dass sie bald ausgereift ist und die Version 1.1.8 ablöst.

Nachdem Sie sich das Java Development Kit heruntergeladen haben, installieren Sie es mit Doppelklick auf das Icon Installieren und folgen den Anweisungen des Installationsprogramms. Während des Installationsvorgangs wird lediglich die Java- Distribution in einem Ordner auf dem Windowsrechner abgelegt. Der ganze Vorgang ist eine Sache von Minuten.

Legen Sie als Nächstes einen Ordner für die Datei RmiJdcb.jar an, z.B. c:\rmijdcb, und laden Sie den Treiber unter folgender Webadresse herunter:

http://www.objectweb.org/RmiJdbc/rmijdbcDownload.htm

Sie können natürlich auch den Treiber von der Programm-CD verwenden, ganz nach Belieben.

Im letzten Schritt müssen Sie den Pfad der Datei RmiJdbc.jar in die CLASSPATH- Umgebungsvariable von NT schreiben. So findet das Java-Laufzeitsystem die .jar-Datei und kann die dort gespeicherte RmiJdbc-server-class ausführen. Dieser Vorgang ist identisch mit dem Ablegen der .jar-Datei im Ordner MRJClasses auf dem Mac. Der Unterschied ist der, dass Sie unter NT Java-Klassen in jedes beliebige Verzeichnis schreiben können, solange Sie den Pfad in die CLASSPATH-Variable eintragen. Mac OS sieht standardmäßig im Ordner MRJClasses nach.

Um die CLASSPATH-Variable auf dem NT-Server zu setzen, befolgen Sie folgende Schritte:

  1. Klicken Sie mit der rechten Maustaste auf das Symbol Arbeitsplatz.
  2. Wählen Sie im Kontextmenü die Option Eigenschaften.
  3. Klicken Sie auf die Registerkarte Umgebung. Unter Windows 2000 klicken Sie auf das Register Fortgeschritten und dann auf die Schaltfläche Umgebungsvariable.
  4. Scrollen Sie durch das Listenfeld Systemvariablen und suchen Sie den Eintrag CLASSPATH und markieren Sie ihn mit einem Mausklick. Die Variable CLASSPATH wird dann im Feld Variable unten im Fenster angezeigt.
  5. Sollte die Variable CLASSPATH nicht gesetzt sein, tragen Sie sie in das Feld Variable ein. Unter Windows 2000 klicken Sie auf den Button Neu und nennen die Variable CLASSPATH.
  6. Tragen Sie in das Feld Wert den Pfad der Datei RmiJdbc.jar ein. Haben Sie die Variable eben erst definiert, brauchen Sie nur c:\rmijdbc einzugeben. Ist die Variable bereits gesetzt, hängen Sie den Pfad, getrennt durch ein Semikolon (;), einfach an bereits definierte Pfade an.
  7. Klicken Sie auf die Schaltfläche Setzen (Windows 2000: OK). Die neue gesetzte bzw. modifizierte Variable CLASSPATH wird nun in der Liste Systemvariablen angezeigt.

In Abb. 8.12 wurde im Dialogfenster Systemeigenschaften die Variable CLASSPATH markiert und ihr ein Wert zugewiesen.

Abbildung 8.12:  Durch Setzen der CLASSPATH -Variable kann Java die Datei RmiJdbc finden.

Bevor Sie das Dialogfenster Systemeigenschaften schließen, sollten Sie auch noch den Pfad zum Verzeichnis bin des Java-Laufzeitsystems angeben. Wenn Sie diesen Wert nicht setzen, müssen Sie jedes Mal den vollen Pfad angeben, wenn Sie Java starten. Je nachdem, wo Sie das Java-Laufzeitsystem installiert haben, sieht der Pfad etwa folgendermaßen aus: c:\jdk1.1.8\bin. Führen Sie noch einmal die gleiche Prozedur wie beim Setzen der Variable CLASSPATH durch, nur dass Sie diesmal die Variable PATH bearbeiten und den Pfad zum Java-Laufzeitsystem an den bereits existierenden Pfad anfügen. (Die Variable PATH ist bereits vorhanden, Sie müssen Sie nicht neu setzen.) Klicken Sie zum Abschluss wieder auf Setzen, damit Ihre Änderungen gespeichert werden.

Haben Sie im Dialogfenster Systemeigenschaften sämtliche Einstellungen getroffen, schließen Sie mit Klick auf OK und starten Sie anschließend den Rechner neu, damit alle Änderungen wirksam werden.

Nach dem Neustart des Rechners können Sie den RmiJdbc-Server starten. Öffnen Sie die Kommandozeile und geben Sie Folgendes ein:

java RmiJdbc.RJJdbcServer sun.jdbc.odbc.JdbcOdbcDriver

Der Server startet daraufhin ohne großes Tamtam. Kein großartiges Schauspiel, aber es funktioniert.

Sobald der Server läuft, können Sie am Mac eine Verbindung zu jeder beliebigen Datenquelle auf dem NT-Server herstellen. Der RmiJdbc-Treiber kommuniziert mit dem RmiJdbc-Server auf dem NT-Rechner, der wiederum mit dem der ODBC-Datenquelle kommuniziert.

Der einzige Haken an dieser Konfiguration ist, dass sie zwar läuft, aber dass Sie jedes Mal, wenn Sie den Rechner neu starten oder die Kommandozeile schließen, auch diesen Prozess neu starten müssen. In einer Produktionsumgebung, wo Server und Datenbank rund um die Uhr verfügbar sein müssen, ist das nicht sehr praktikabel.

Sie können den RmiJdbc-Treiber unter Windows NT jedoch als Dienst einrichten. In diesem Fall wird der RmiJdbc-Server automatisch neu gestartet, wenn der Rechner gebootet wird. Der Server läuft im Hintergrund, ohne dass Sie die Kommandozeile öffnen müssen.

Die Originalanleitung, wie man den RmiJdbc-Server als Dienst einrichtet, stammt von der RmiJdbc-Website. Ich stelle diese Informationen hier in modifizierter Form zur Verfügung. Für weitere Informationen empfiehlt sich ein Besuch auf der ObjectWeb- Website:

http://www.objectweb.org/RmiJdbc/

Den RmiJdbc-Server als Dienst konfigurieren

Damit Sie den RmiJdbc-Server als Dienst einrichten können, brauchen Sie die Datei srvany.exe aus dem Resource Kit von Windows NT. Für die folgenden Ausführungen wird davon ausgegangen, dass Sie diese Datei im Verzeichnis c:\tools gespeichert haben. Führen Sie nach der Installation folgende Schritte aus:

  1. Starten Sie INSTSRV RmiJdbc c:\tools\svrany.exe.
  2. Wählen Sie Start > Ausführen.
  3. Tippen Sie regedit in das Eingabefeld Öffnen, um den Registrierungseditor zu öffnen.
  4. Erzeugen Sie einen neuen Schlüssel:
    HKEY_LOCAL_MACHINE\SYSTEM \CurrentControlSet\Services\RmiJdbc\Parameters.
  5. Erzeugen Sie unter diesem Schlüssel einen neuen Eintrag Application mit dem Namen REG_SZ und dem Wert einer .cmd-Datei, die die Parameter für den RmiJdbc- Server enthält, z.B. c:\rmijdbc\rmijdbc.cmd.
  6. Schließen Sie den Registrierungseditor.

Nun müssen Sie die Datei c:\rmijdbc\rmijdbc.cmd erzeugen, die den Rmidbc-Server startet. Nachstehend finden Sie ein entsprechendes Beispielskript. Dabei wird davon ausgegangen, dass die Variable CLASSPATH richtig gesetzt wurde und das Java- Laufzeitsystem im Verzeichnis c:\jdk1.1.8\bin liegt.

@echo off
c:\jdk1.1.8\bin\java RmiJdbc.RJJdbcServer sun.jdbc.odbc.JdbcOdbcDriver >
c:\rmijdbc \rmijdbc_server.log

Als letzten Schritt konfigurieren Sie den neuen Dienst so, dass er automatisch gestartet wird, wenn der Rechner bootet.

  1. Klicken Sie auf Start.
  2. Wählen Sie Einstellungen > Systemsteuerung.
  3. Öffnen Sie das Kontrollfenster Dienste.
  4. Suchen Sie den neu definierten Dienst »RmiJdbc« und markieren Sie ihn.
  5. Klicken Sie auf Startart, um zu definieren, wie der Dienst gestartet werden soll.
  6. Wählen Sie die Option Automatisch.
  7. Schließen Sie das Kontrollfenster und starten Sie den Rechner neu.
  8. Der Dienst wird nach dem Neustart automatisch gestartet. Sie müssen sich nicht einloggen oder den Dienst von Hand starten.

Nach dieser Prozedur können Sie sich wieder wie gewohnt Ihrem Mac widmen. Das ganze Verfahren scheint zwar recht aufwändig, doch müssen Sie nur ein paar problemlos erhältliche Programmpakete installieren und bestimmte Einstellungen vornehmen, die denen bei der Einrichtung anderer Datenbankverbindungen weitgehend ähnlich sind. Mit der oben beschriebenen Konfiguration haben Sie auf dem Mac mehr oder weniger dieselben Zugriffsmöglichkeiten auf Datenbanken wie unter Windows.

8.3 MySQL installieren

Das letzte Thema des heutigen Tages beschäftigt sich mit der Einrichtung der MySQL- Datenbank. MySQL ist ein Open Source-Datenbanksystem, das weitgehend konform zu den SQL-Spezifikationen ist. Leider unterstützt es bestimmte recht nützliche Features von UltraDev wie Ansichten und gespeicherte Prozeduren nicht, dafür ist es aber sehr schnell und stabil und gerade für den Einsatz von Webanwendungen sehr beliebt.

Das Sympathische an MySQL ist, dass es für viele Plattformen erhältlich ist und als Open Source-Produkt frei für andere Plattformen kompiliert werden darf. (Die binäre Version für Windows ist allerdings Shareware.) Zuerst werden wir MySQL unter Windows konfigurieren, und dann werden wir uns ansehen, wie wir es unter UNIX/Linux zum Laufen bringen.

MySQL unter Windows einrichten

Der MySQL-Server läuft ohne Probleme unter Windows 95/98 und natürlich auch unter NT. Spielen Sie jedoch mit dem Gedanken, MySQL in irgendeiner Form als professionellen Datenbankserver einzusetzen, weichen Sie besser auf NT als Produktionsplattform aus. Unter NT können Sie MySQL als Standard-Dienst einrichten.

Unter Windows ist die Installation von MySQL mit ein paar Handgriffen erledigt, da das Programm bereits kompiliert ist:

  1. Laden Sie die aktuelle Version von MySQL Win32 aus dem Internet herunter: http: //www.mysql.com/. Die Windowsvariante liegt manchmal in einer älteren Version vor als das UNIX-Paket. Sehen Sie ab und zu unter dieser Adresse nach, ob zwischenzeitlich aktuellere Versionen angeboten werden.
  2. Entpacken Sie die Datei.
  3. Starten Sie das Setup-Programm.
  4. Folgen Sie den Anweisungen des Installationsprogramms.

Nach erfolgter Installation können Sie nach ein paar Handgriffen loslegen. Öffnen Sie das Installationsverzeichnis. Da das Programm nicht ins Startverzeichnis eingetragen wird, müssen Sie das Installationslaufwerk durchsuchen.

Das MySQL-Verzeichnis besteht aus mehreren Ordnern. Für unsere Zwecke ist das Verzeichnis bin wichtig. Hier liegen die verschiedenen Applikationen, die wir brauchen, um MySQL zu kontrollieren. Die beiden, mit denen wir arbeiten werden, sind mysqld und mysql.

MySQL ist eine Client/Server-Anwendung. Auch bei rein lokalem Einsatz braucht MySQL einen Client, um mit dem Server zu kommunizieren. mysqld ist ein Server ohne Oberfläche, die Clientanwendung heißt mysql.

Den Server starten Sie mit der Betriebssystem-spezifischen Version von mysqld - mysqld-opt unter Windows 95/98, unter NT mysqld-nt. Durch Doppelklicken auf die entsprechende Version wird der Server gestartet und verschwindet sofort von der Oberfläche. Das heißt nicht, dass die Serveranwendung wieder geschlossen wurde, sie legt sich nur automatisch in den Hintergrund.

Unter NT können Sie MySQL als Dienst einrichten. Dazu müssen Sie das Programm folgendermaßen aufrufen:

c:\mysql\bin\mysqld-nt-install

Dabei wird natürlich davon ausgegangen, dass MySQL im Verzeichnis c:\mysql liegt - passen Sie den Pfad Ihrer Arbeitsumgebung entsprechend an. Als Nächstes müssen Sie den neu eingerichteten MySQL-Dienst so konfigurieren, dass er automatisch gestartet wird. Nähere Informationen hierzu finden Sie im Abschnitt »RmiJdbc-Server als Dienst konfigurieren«.

MySQL auf UNIX-Systemen einrichten

MySQL auf UNIX-Systemen einzurichten erfordert etwas Handarbeit. Verwenden Sie eine Linux-Distribution, müssen Sie sich nur eine RPM herunterladen und folgen der Installationsroutine. Ansonsten müssten Sie sich eine vorkompilierte Version besorgen oder den Sourcecode selbst kompilieren.

Im letzteren Falle laden Sie den Sourcecode unter folgender Adresse herunter: http:// www.mysql.com/downloads/

und entpacken Sie ihn. Die Version, die in diesem Buch verwendet wird, ist mysql-3.23.21- beta.tar.gz, die aktuellste, die zum Zeitpunkt, als ich diese Zeilen schrieb, erhältlich war.

[jray@contempt mysql ]$tar -zvxf mysql-3.23.21-beta.tar.gz | more
mysql-3.23.21-beta/
mysql-3.23.21-beta/Makefile.in
mysql-3.23.21-beta/README
mysql-3.23.21-beta/stamp-h.in
mysql-3.23.21-beta/COPYING
mysql-3.23.21-beta/COPYING.LIB
mysql-3.23.21-beta/Makefile.am
mysql-3.23.21-beta/acconfig.h
mysql-3.23.21-beta/acinclude.m4
...
mysql-3.23.21-beta/support-files/my-huge.cnf.sh
mysql-3.23.21-beta/support-files/mysql-log-rotate.sh
mysql-3.23.21-beta/support-files/mysql.server.sh
mysql-3.23.21-beta/support-files/binary-configure.sh

Starten Sie nun das Konfigurationsprogramm, um eine Makefile für Ihr System zu erzeugen. Daraufhin werden die erforderlichen Systemdaten ausgelesen, was unter Umständen etwas dauern kann.

creating cache ./config.cache
checking host system type... i686-pc-linux-gnu
checking target system type... i686-pc-linux-gnu
checking build system type... i686-pc-linux-gnu
..
creating sql-bench/Makefile
creating tests/Makefile
creating Docs/Makefile
creating support-files/Makefile
creating include/mysql_version.h
creating config.h
...

Ist die Konfigurierung abgeschlossen, müssen Sie das Programm kompilieren. Starten Sie die Kompilierung mit dem Befehl »make«. (Dieser Vorgang dauert eine gewisse Zeit.)

[jray@contempt mysql-3.23.21-beta ]$ make
make all-recursive
make [1]:Entering directory '/home/jray/mysql/mysql-3.23.21-beta '
...
binary-configure.sh > binary-configure-t
/bin/mv binary-configure-t binary-configure
make [2]:Leaving directory '/home/jray/mysql/mysql-3.23.21-beta/support-files '
make [2]:Entering directory '/home/jray/mysql/mysql-3.23.21-beta '
make [2]:Nothing to be done for 'all-am '.
make [2]:Leaving directory '/home/jray/mysql/mysql-3.23.21-beta '
make [1]:Leaving directory '/home/jray/mysql/mysql-3.23.21-beta '

Die Installation ist ebenfalls einfach. Geben Sie nur den Befehl »make install« ein:

[jray@contempt mysql-3.23.21-beta]$ make install
Making install in include
make [1]:Entering directory '/home/jray/mysql/mysql-3.23.21-beta/include '
make [2]:Entering directory '/home/jray/mysql/mysql-3.23.21-beta/include '
make [2]:Nothing to be done for 'install-exec-am '.
/bin/sh ../mkinstalldirs /usr/local/include/mysql
mkdir /usr/local/include
..
make [2]:Nothing to be done for 'install-data-am '.
make [2]:Leaving directory '/home/jray/mysql/mysql-3.23.21-beta '
make [1]:Leaving directory '/home/jray/mysql/mysql-3.23.21-beta '

Starten Sie jetzt den Server. Ist er standardmäßig im Verzeichnis /usr/local/bin installiert, geben Sie Folgendes ein:

[jray@contempt mysql-3.23.21-beta]$ /usr/local/bin/safe_mysqld &

Über ein Skript können Sie den MySQL-Server starten, wenn der Rechner bootet. Näheres hierzu finden Sie in der MySQL-Dokumentation und im Handbuch zu Ihrer Linux- Distribution.

Den MySQL-Server testen

Um die erfolgreiche Installation von MySQL (unter Windows und Linux) zu testen, stellen Sie per mysql-Client eine Verbindung zum Datenbankserver her. Anschließend können Sie die Systemdatenbank von MySQL auslesen, in der verschiedene Tabellen zur Zugriffskontrolle auf den Datenbankserver gespeichert sind. Einzelheiten zur Konfiguration entnehmen Sie bitte der Dokumentation zu MySQL.

Einen grundlegenden Funktionstest führen Sie über die Kommandozeile (Windows: MS- DOS-Eingabeaufforderung) durch. Es folgt eine Beschreibung der erforderlichen Schritte unter Windows. Wechseln Sie zunächst in das Verzeichnis mysql/bin, geben Sie dann am DOS-Prompt den Befehl »mysql« ein, um den Client zu starten. Verbinden Sie sich mit der Systemdatenbank mit dem Befehl »connect mysql;«. Geben Sie zuletzt den Befehl »show tables;« ein. Sie schließen den Client mit dem Befehl »quit«.

Welcome to the mySQL monitor.  Commands end with ; or \g.
Your mySQL connection id is 10 to server version: 3.23.29a-gamma

Type 'help;' or '\h' for help. Type '\c' to clear the buffer
mysql> connect mysql;
Connection id: 11
Current database: mysql
mysql>show tables;
+-----------------+
| Tables_in_mysql |
+-----------------+
| columns_priv |
| db |
| host |
| tables_priv |
| user |
+-----------------+
5 rows in set (0.00 sec)
mysql>quit
Bye

Als Folge dieser Operation wird die interne Datenbank mysql, die Zugriffsrechte regelt, sowie die zugehörigen Tabellen angezeigt. Zwar kein Augenschmaus, aber ein Beweis, dass der Server läuft. Nähere Informationen finden Sie unter http://www.mysql.com/

ODBC-Datenquelle für MySQL einrichten

Bevor Sie einen ODBC-Treiber für MySQL einrichten können, müssen Sie ihn erst aus dem Internet unter folgender Adresse herunterladen: http://www.mysql.com/downloads/ api-myodbc.html. Wählen Sie aus den angebotenen Versionen die richtige für Ihre Windowsplattform aus (95/98, NT). Achtung: Laden Sie die Full-Setup-Version herunter!

Starten Sie nach erfolgtem Download das Setup-Programm:

  1. Klicken Sie im Begrüßungsfenster auf den Button Continue.
  2. Daraufhin wird das Dialogfenster Install Drivers angezeigt (siehe Abb. 8.13). Markieren Sie im Listenfeld Available ODBC Drivers den MySQL-Treiber, sonst wird er nicht installiert. Klicken Sie anschließend auf OK.

    Abbildung 8.13:  Markieren Sie den MySQL-Treiber, ansonsten wird er nicht installiert.

  3. Nachdem der Treiber installiert wurde, werden Sie aufgefordert, eine ODBC- Datenquelle zu definieren. Diesen Schritt können Sie ohne Weiteres abbrechen. Wir werden das anschließend per Standard-Prozedur erledigen.

Falls Sie eine Fehlermeldung erhalten, dass Sie Ihr System neu booten und den Installationsvorgang wiederholen sollen, kann es unter Umständen genügen, wenn Sie das Setup etwas modifizieren. Klicken Sie im Dialogfenster auf den Button Advanced und wählen Sie die Option Do Not Install Driver Manager und schließen das Fenster mit OK. In den meisten Fällen ist damit das Problem behoben.

Sobald der Treiber installiert ist, können Sie eine Datenquelle definieren. Führen Sie hierzu folgende Schritte aus (ein anschließender Neustart ist nicht erforderlich):

  1. Klicken Sie auf Start.
  2. Wählen Sie Einstellungen > Systemsteuerung.
  3. Öffnen Sie mit Doppelklick das Kontrollfenster ODBC-Datenquellen (Windows 9x/NT). Unter Windows 2000 klicken Sie auf Verwaltung und dann Datenquellen (ODBC).
  4. Öffnen Sie die Registerkarte System-DSN.
  5. Klicken Sie auf Hinzufügen.
  6. Wählen Sie den MySQL-Treiber aus der Liste und klicken Sie auf Fertig stellen.
  7. Es öffnet sich das in Abb. 8.14 gezeigte Konfigurationsfenster. Nehmen Sie die entsprechenden Einstellungen vor und klicken Sie auf OK. Nun ist die Datenquelle einsatzbereit.

    Abbildung 8.14:  Mit einigen wenigen Einstellungen sind Sie mit der Datenbank verbunden.

Abb. 8.14 zeigt die Konfiguration einer Testdatenbank, die ich während der Arbeit an diesem Buch verwendet habe. Im Einzelnen können Sie folgende Einstellungen vornehmen:

Sofern die Verbindung zur Datenbank mysql korrekt definiert wurde, können Sie sofort damit arbeiten. Mit MS Access oder einer anderen Anwendung lässt sich eine Verbindung schnell testen.

Waren Sie nicht auch überwältigt von den zahllosen Einstellungsmöglichkeiten, die myODBC bietet? Die meisten können Sie unbeachtet lassen, der Treiber funktioniert trotzdem. Wenn Sie Näheres dazu wissen wollen, werden Sie in der Dokumentation zum MySQL-Server fündig.

8.4 Eine ODBC-Datenquelle für Microsoft Access definieren

Auf vielen Windowsrechnern ist MS Access schon installiert und kann für Datenbankanbindungen mit UltraDev verwendet werden. Genau wie bei MySQL müssen Sie einen Access-spezifischen ODBC-Treiber einrichten und in UltraDev verwenden. Sofern Sie Access bereits installiert haben, ist auch der passende ODBC-Treiber bereits vorhanden.

  1. Klicken Sie auf Start.
  2. Wählen Sie Einstellungen > Systemsteuerung.
  3. Öffnen Sie mit Doppelklick das Kontrollfenster ODBC-Datenquellen (Windows 9x/NT). Unter Windows 2000 klicken Sie auf Verwaltung und dann Datenquellen (ODBC).
  4. Öffnen Sie die Registerkarte System-DSN.
  5. Klicken Sie auf Hinzufügen.
  6. Wählen Sie den MS Access-Treiber aus der Liste und klicken Sie auf Fertig stellen.
  7. Es öffnet sich das in Abb. 8.15 gezeigte Konfigurationsfenster. Nehmen Sie die entsprechenden Einstellungen vor und klicken Sie auf OK. Nun ist die Datenquelle einsatzbereit.

    Abbildung 8.15:  Um eine ODBC-Datenquelle für eine Access-Datenbank einzurichten, müssen Sie lediglich den DSN und die Datenbank selbst zuweisen.

In Abb. 8.15 sehen Sie ein Beispiel für eine Muster-ODBC-Verbindung zu einer Access- Datenbank:

Falls Sie keinen ODBC-Treiber finden, müssen Sie ihn von der MS-Office-CD nachinstallieren. Genau wie im Falle des MySQL-Treibers können Sie auch nach der Konfiguration des Access-Treibers von UltraDev aus sofort auf die Datenquelle zugreifen.

Der Einsatz von MySQL erfolgt zu reinen Trainingszwecken. Der Hintergrund ist, jedem Anwender und für jede Plattform ein freies Datenbanksystem an die Hand zu geben, das schnell einsatzbereit ist. Für komplexere Anwendungen empfiehlt sich der Einsatz professioneller Datenbanken wie PostgreSQL (http://www.postgresql.com/) oder der SQL-Server von Microsoft, die zusätzliche Programmfeatures von UltraDev unterstützen.

Es mag zwar verlockend sein, MS Access als Datenbankserver einzusetzen, doch kommen Office-Programme schnell an ihre Grenzen, wenn mehrere Benutzeranfragen parallel zu verarbeiten sind. Wenn Access denselben Leistungsumfang böte wie der SQL-Server von Microsoft, was wäre dann der Sinn eines solchen Produkts?

Andererseits ist MS Access ein ausgezeichnetes Entwicklungstool, mit dem sich funktionierende Arbeitsmodelle realisieren lassen, die dann auf einen größer dimensionierten SQL-Server portiert werden.

8.5 Zusammenfassung

Gegenstand der heutigen Lektion war die Einrichtung von Datenbankverbindungen, die die Grundlage für die Entwicklung von dynamischen Webapplikationen mit UltraDev darstellen. Datenbankverbindungen können lokal oder über den Anwendungsserver definiert werden.

Mögliche Verbindungstypen zu einer Datenbank sind ADO/ODBC, ColdFusion und JDBC. Mit UltraDev 4.0 stehen diese Verbindungstypen auch Mac-Usern zur Verfügung, doch müssen sie sich über den Anwendungsserver verbinden. Die Ausnahme sind Verbindungen per JDBC oder fortgeschrittene ColdFusion-Konfigurationen. Diese beiden Verbindungsarten erlauben Mac-Usern den Datenbankzugriff per JDBC-Treiber.

Wenn Sie sich als Mac-Anwender in puncto Datenbankverbindungen eingeschränkt fühlen, steht Ihnen per RmiJdbc-Treiber eine größere Auswahl an Verbindungstypen zur Verfügung. Über einen NT-Server stellt RmiJdbc eine Brücke zwischen den ODBC- Treibern des NT-Rechners und dem JDBC-Treiber auf dem Mac her.

Zur Vervollständigung des Stoffes wurde zum Abschluss der heutigen Lektion das MySQL- Datenbankssytem vorgestellt. MySQL ist ein äußerst stabiler und kostengünstiger Datenbankserver, den Sie gut mit UltraDev kombinieren können. Er bietet zwar nicht alle Features kommerzieller Produkte, ist jedoch extrem schnell und eignet sich hervorragend für Internet-Anwendungen. Jedoch lassen sich nicht alle Beispiele in diesem Buch problemlos realisieren, da es an bestimmten Zusatzfunktionen fehlt.

8.6 Fragen und Antworten

Frage:
Welche Datenbanken kann ich zusammen mit UltraDev verwenden?

Antwort:
Zu den meisten modernen Datenbanken gibt es sowohl ODBC- wie auch JDBC- Treiber, sogar zum SQL Server von Microsoft. Insofern dürfte es keine Probleme bei der Einrichtung einer Datenbankverbindung geben.

Frage:
Kann man eine eingerichtete Datenbankverbindung auf einen anderen Rechner transferieren?

Antwort:
Die Verbindungsparameter werden zusammen mit den übrigen Dateien der Site in einem eigenen Ordner Connections gespeichert. Jeder Anwender, der seine Site mit denselben Einstellungen einrichtet, kann auf dieselben Datenbankverbindungen zugreifen. Frühere Versionen von UltraDev haben diese Verbindungsdaten in der Datei connections.xml gespeichert, die im Ordner Configuration > Connections liegt. Wenn Sie mit UltraDev 1.0 arbeiten, brauchen Sie diese Datei nur auf den anderen Rechner zu kopieren, dann stehen diese Verbindungsdaten auch dort zur Verfügung.

Frage:
Warum kann man eigentlich keine JDBC-Treiber zusammen mit ASP verwenden?

Antwort:
ASP unterstützt ursprünglich keine JDBC-Treiber. Es gäbe zwar einen Workaround, aber UltraDev akzeptiert nur reinen ADO-ASP-Code.

Frage:
Welche Funktionen unterstützt MySQL nicht, die für den praktischen Einsatz unter Umständen wichtig wären?

Antwort:
Was in erster Linie fehlt, sind Ansichten und gespeicherte Prozeduren. Für komplexe Anwendungen könnten diese Features wichtig werden. In solchen Fällen müssten Sie entweder zu einem anderem Produkt wechseln oder per Handarbeit die fehlenden Funktionen implementieren, indem Sie den vom Server automatisch generierten Code entsprechend bearbeiten.

8.7 Workshop

Der Workshop dient dazu, den gelesenen Stoff mithilfe von gezielten Fragen und Übungen zu vertiefen. Die Antworten finden Sie in Anhang A, »Quiz-Antworten«.

Quiz

  1. Welche Typen von Datenbankverbindungen gibt es?
  2. Wie kann man vom Mac aus auf ODBC-Datenquellen zugreifen?
  3. Auf welchen Systemen ist MySQL lauffähig?
  4. Welche Konsequenzen hat es, wenn Sie RmiJdbc nicht als Dienst einrichten?
  5. Wo werden JDBC-Treiber am Mac installiert?

Übungen

  1. Richten Sie eine Datenbankverbindung ein und testen Sie diese Verbindung mit den Mitteln, die Sie heute kennen gelernt haben.
  2. Richten Sie eine MySQL-Datenbank ein und experimentieren Sie damit. SQL wurde zwar noch nicht besprochen, doch können Sie den Beispielcode von Tag 6, »Einführung in dynamische Webanwendungen und Datenbankentwicklung«, benutzen, um die Funktionalität zu testen. Die Befehle, mit denen eine Datenbank erzeugt wird, stehen im Text. Nachdem Sie eine Datenbank angelegt haben, stellen Sie mithilfe des MyODBC-Treibers eine Verbindung dazu her.



vorheriges KapitelInhaltsverzeichnisStichwortverzeichnisFeedbackKapitelanfangnächstes Kapitel


© Markt+Technik Verlag, ein Imprint der Pearson Education Deutschland GmbH