Hallo,
in Ihrem Blogeintrag heißt es:
> Unter Windows habt Ihr keine Chance das Encoding zu ändern. Bei deutschen
> Windows wird CP850 verwendet
...
Diese Aussage ist falsch.
# Codepage der Eingabeaufforderung abfragen (Windows XP deutsch SP3)
C:\>chcp
Aktive Codepage: 850.
# Codepage der Eingabeaufforderung ändern (Windows XP deutsch SP3)
C:\>chcp 1252
Aktive Codepage: 1252.
Und schon ist die Codepage für die Konsole unter Windows auf
Windows-1252 entspr. im Groben ISO/IEC 8859-1 entspr. latin1 geändert.
Dass Microsoft in Windows-1252 die Steuerzeichen zwischen 0x80 und 0x9F
für darstellbare Zeichen misbraucht hat, steht dabei auf einem anderen
Blatt. Jedenfalls kann man danach deutsche Umlaute und sogar das
Eurozeichen ohne Probleme über eine latin1 Clientverbindung in latin1
Tabellen oder auch UTF8 Tabellen einfügen und auch korrekt ausgeben
lassen (Achtung: Rasterschrift vs. Lucida Console).
Die Möglichkeit, den Zeichensatz der Clientverbindung mit "SET NAMES
'cp850';" umzuschalten oder den Startparameter
"--default-character-set=cp850" für die MySQL Konsole zu verwenden,
besteht natürlich weiterhin. Allerdings muss ich dann auf z.B. das
Eurozeichen verzichten.
Genial wäre es natürlich, das Encoding der Konsole auf UTF-8 ändern zu
können. Unter XP kenne ich hierfür leider keine Möglichkeit, aber
vielleicht geht das ja irgendwann in Windows Vista/Windows 7 vll. mit
der dortigen "Powershell".
Wer bis dahin als deutscher Nutzer tatsächlich Bedarf an erweiterter
Zeichenunterstützung hat, sollte besser Tools wie den Query Browser,
eine Linux Konsole mit UTF-8 oder eine webbasiertes Datenbankfrontend
mit entsprechenden Einstellungen benutzen.
Gerade Anfängern, die noch keinen tieferen Einblick in die Thematik der
Zeichenkodierung und -umwandlung haben dürfte der "chcp 1252"-Tip über
die erste Frustration mit der MySQL Konsole hinweghelfen. Jedenfalls
habe ich als Anfänger verzweifelt nach einem solchen Tip gesucht und
nicht einmal die 'cp850' Lösung finden können. Auch in vielen Foren
liest man häufig die Frage nach den Umlauten, erhält aber meist keine
brauchbare Antwort.
Mit freundlichen Grüßen
Jürgen Schmitts
Susanne Ebrecht schrieb:
> Hallo,
>
> ein paar Korrekturen gibt es hier von mir:
> Unter Windows in der CLI ist stets CP850 einzustellen.
>
> Da der Text via Email zuviel wurde, habe ich über das ganze Thema mit
> anschaulichen Beispielen und tieferen Erläuterungen mal geblogt:
>
> http://www.miracee.org/2009/03/30/encoding-handling-mysql-cli-5858398/
>
> Der Link zu den Folien aus meinem University Vortrag ist ebenfalls am
> Ende des Blogs zu finde.
>
> Susanne