Hallo zusammen.
Ich schreibe, mittels einer MySQL-C-API-Funktion, Daten in eine Tabelle. Das Ganze funzt auch, bis auf das Verkorksen von Umlauten. Habe auch schon den Zeichensatz der Tabelle geändert - keine Änderung.
Die Funktion hat folgende Syntax und wird in etwa so aufgerufen:
int mysql_real_query(MYSQL*, const char*, unsigned long);
mysql_real_query(verbindung, sqlstr, strlen(sqlstr));
sqlstr ist so definiert:
"UPDATE mitarbeiter SET vname='Ünal' WHERE manr=1;"
Das Ü wird immer als ein anderes Zeichen dargestellt.
Der Zeichensatz meines XPs ist cp850. Die Umlaute werden da mit Codes assoziert, die ich mit dem Wertebereich von char nicht abbilden kann. Allerdings habe ich gelesen, dass der Standard-MySQL-Client mit derselben API entwickelt wurde. Deshalb muss das doch irgendwie gehen. Weiß jemand Rat?
Gruß
Kai
Ich schreibe, mittels einer MySQL-C-API-Funktion, Daten in eine Tabelle. Das Ganze funzt auch, bis auf das Verkorksen von Umlauten. Habe auch schon den Zeichensatz der Tabelle geändert - keine Änderung.
Die Funktion hat folgende Syntax und wird in etwa so aufgerufen:
int mysql_real_query(MYSQL*, const char*, unsigned long);
mysql_real_query(verbindung, sqlstr, strlen(sqlstr));
sqlstr ist so definiert:
"UPDATE mitarbeiter SET vname='Ünal' WHERE manr=1;"
Das Ü wird immer als ein anderes Zeichen dargestellt.
Der Zeichensatz meines XPs ist cp850. Die Umlaute werden da mit Codes assoziert, die ich mit dem Wertebereich von char nicht abbilden kann. Allerdings habe ich gelesen, dass der Standard-MySQL-Client mit derselben API entwickelt wurde. Deshalb muss das doch irgendwie gehen. Weiß jemand Rat?
Gruß
Kai