[gelöst] [Qt4] Datenbank Select aber Problem mit Umlauten
Verfasst: 24. Oktober 2005 12:58
Hallo,
ich frage einige Dinge von einer SQLite3 Datenbank ab, ich bekomme bei dem Query selbst alle möglichen Abfragen mit und ohne Umlaute hin, durch toLocal8Bit(). Das funktioniert immer und bringt immer das gewünschte Ergebnis.
Jetzt das Problem, wenn ich nun diesen Query habe und von einem SELECT die Daten darstellen möchte, bekomme ich es absolut nicht hin, die Umlaute darzustellen.
Dort, wo Problem 1 und Problem 2 steht kommen die Umlaute immer als Salat heraus. Ich habe mich ein wenig in den Treiber Sourcen umgesehen, es sieht so aus, als ob hier utf16 verwendet wird. Also ich habe alle Möglichkeiten, fromLocale8Bit zu fromUtf16 ausprobiert, aber es geht überhaupt nix. Weiß jmd. vielleicht wie es geht, oder hat das gleiche Problem und trotzdem eine Lösung dafür bereits gefunden? Das dort nun toQString steht ist egal, da ich ja noch keine alternative wirkliche Lösung gefunden habe.
ich frage einige Dinge von einer SQLite3 Datenbank ab, ich bekomme bei dem Query selbst alle möglichen Abfragen mit und ohne Umlaute hin, durch toLocal8Bit(). Das funktioniert immer und bringt immer das gewünschte Ergebnis.
Jetzt das Problem, wenn ich nun diesen Query habe und von einem SELECT die Daten darstellen möchte, bekomme ich es absolut nicht hin, die Umlaute darzustellen.
Code: Alles auswählen
/* Die Abfrage */
QSqlQuery query;
query.prepare( "SELECT id, blz, bezeichnung, ort FROM plaa_blz WHERE 1 AND blz LIKE ? AND bezeichnung LIKE ? AND ort LIKE ?" );
query.bindValue( 0, "%" + blz + "%" );
query.bindValue( 1, QString( "%" + name + "%" ).toLocal8Bit() );
query.bindValue( 2, QString( "%" + ort + "%" ).toLocal8Bit() );
query.exec();
while ( query.next() ) {
pResult += query.value( 1 ).toString();
pResult += query.value( 2 ).toString(); // **Problem 1**
pResult += query.value( 3 ).toString(); // **Problem 2**
pResult += query.value( 0 ).toString();
}