Ich suche nach Möglichkeiten eine auf dem gleichen Server wie mein Applet liegende (also localhost oder so) MySQL-Datenbank zu verwenden. Das Applet sollte Daten in Tabellen schreiben und aus ihnen lesen können. Ist sowas irgendwie möglich?
Ich suche nach Möglichkeiten eine auf dem gleichen Server wie
mein Applet liegende (also localhost oder so) MySQL-Datenbank zu verwenden. Das Applet sollte Daten
in Tabellen schreiben und aus ihnen lesen können. Ist sowas
irgendwie möglich?
Unter http://mmmysql.sourceforge.net/ findest du einen JDBC-Treiber für mySQL. Es ist ein Typ 4-Treiber, d. h. komplett in Java entwickelt ohne Zugriffe auf native Bibliotheken und eignet sich damit für den Einsatz in Applets. Außerdem ist er nur gute 100 KB groß, auch praktisch für den Einsatz in einem Applet (wegen Downloadzeit).
Falls du Probleme mit Datenbankprogrammierung bzw. JDBC ansich hast, dafür gibts weiter unten ein eigenes Brett (SQL/Datenbankprogrammierung).
Erstmal vielen Dank für den Hinweis auf die mysql-Treiber.
Bei mir taucht bei deren Verwendung allerdings noch ein Problem auf, vielleicht kannst du oder jemand andres mir da noch weiterhelfen:
Das Laden der Treiber funktionier einwandfrei, nur wenn ich dann zu der Datenbank (auf localhost) connecten will, sagt er mir, dass er bei der angegebenen Adresse keine Datenbank finden kann.
Connection C = DriverManager.getConnection("jdbc:mysql://localhost/datenbank?user=benutzer&password=passw");
verursacht dann folgenden Meldung:
Cannot connect to MySQL-Server on localhost. Is there a MySQL-Server running on the machine/port you are trying to connect to? (com.ms.security.SecurityExceptionEx)
Ich hab es auch schon mit einem anderen Server ausprobiert (nicht localhost sondern einer Datenbank auf f2s.com, auf die ich auch von außen Zugriff habe), die Namen der Datenbank sowie username und password stimmen auch alle.
Ich würde a) den Verbindungs-URL checken, ob der sicher so aufgebaut werden muss und b) kanns sein, dass du aus dem Applet nicht raus darfst und da vorher was dafür tun mußt, keine Ahnung. :o)
Schreib das Problem vielleicht als eigenen Thread, weil sonst liests keiner mehr. :o)