Hallo Zusammen,
ich nutze eine MySQL-Datenbank, auf die ich aus meinem Java-Programm über jPMdbc zugreife.
Das klappt auch ohne Probleme, sowohl was lesen als auch was schreiben angeht. Lediglich bei der Ausgabe habe ich ein Problem mit den Umlauten.
So wird Osnabrück z.B. in einer JTable nur als "Osnabr[]" angezeigt, "[]" steht dabei für ein Quadrat.
Merkwürdigerweise ist das nur beim lesen der Fall. Wenn ich einen Datensatz mit Umlaut in die Datenbank schreibe geht der ohne Probleme durch und wird so auch korrekt z.B. in PHPMyAdmin angezeigt.
Hier ein paar Daten:
MySQL-Zeichensatz: UTF-8 Unicode (utf8)
Zeichensatz / Kollation der MySQL-Verbindung: utf8_unicode_ci
Kollation der Tabelle/Felder: utf8_general_ci
jPMdbc steht was meine Internet-Recherchen angeht ebenfalls Standardmäßig auf UTF8.
Auf die DB greife ich wie folgt zu (gekürzt):
Woran kann es liegen? Hat jemand eine Idee?
Viele Grüße,
Sebix
ich nutze eine MySQL-Datenbank, auf die ich aus meinem Java-Programm über jPMdbc zugreife.
Das klappt auch ohne Probleme, sowohl was lesen als auch was schreiben angeht. Lediglich bei der Ausgabe habe ich ein Problem mit den Umlauten.
So wird Osnabrück z.B. in einer JTable nur als "Osnabr[]" angezeigt, "[]" steht dabei für ein Quadrat.
Merkwürdigerweise ist das nur beim lesen der Fall. Wenn ich einen Datensatz mit Umlaut in die Datenbank schreibe geht der ohne Probleme durch und wird so auch korrekt z.B. in PHPMyAdmin angezeigt.
Hier ein paar Daten:
MySQL-Zeichensatz: UTF-8 Unicode (utf8)
Zeichensatz / Kollation der MySQL-Verbindung: utf8_unicode_ci
Kollation der Tabelle/Felder: utf8_general_ci
jPMdbc steht was meine Internet-Recherchen angeht ebenfalls Standardmäßig auf UTF8.
Auf die DB greife ich wie folgt zu (gekürzt):
Java:
Class.forName("de.root1.jpmdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:jpmdbc:http://meinhost/jpmdbc.php?tool", "user", "pw");
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM XY");
JOptionPane.showMessageDialog(null,rs.getString("ort"));
Woran kann es liegen? Hat jemand eine Idee?
Viele Grüße,
Sebix