Umlaute bei SQL Abfragen

Black-Rider007

New Member
Hallo,
ich habe ein Problem.
Und zwar werden in alle SQL Abfragen, sei es PHPMYADMIN oder nur irgentein Script die Sonderzeichen z.B so für ü angezeigt:
ü

Weiß jemand, wo man das einstellen muss, damit aus den SQL Abfragen auch ä,ö,ü, kommen?

Herzlich dank!
MFG
Black-Rider
 
Deine MySQL-Datenbank läuft mit UTF-8 Kodierung, offenbar deine Anwendung nicht. Stell mal die Datenbank auf latin1 oder sowas um.
 
Bei MySQL wird das Encoding nicht per Datenbank, sondern per Tabelle festgelegt. Dabei handelt es sich um die Collation der Tabelle.
Ein einfaches Ändern wird es aber nicht bringen, da hinterher immer noch 16Bit-Umlaute in der Tabelle stehen.
Am besten dumpst du die Datenbank und änderst die Collation im Dump. Nach einem neueinspielen sollte alles passen.
 
Falsch!

Die Kollation beeinflusst die Sortierreihenfolge, hat aber in keinster Weise etwas mit der Kodierung zu tun.

Was du meinst ist der (?) Charset - hier wird festgelegt wie die Daten gespeichert werden.

@Black-Rider, gib mal noch ein paar Infos mehr bitte. Es gibt hier mehrere Fehlerquellen. Du kannst z.B. Latin1 Daten in UTF8 importiert haben, dann musst du den Zeichensatz auf Latin1 umstellen. Oder du hast UTF8 Daten und dein Server liefert Latin1. Dann solltest du entweder die Serververbindung standardmäßig auf UTF8 stellen (sofern das bei dir machbar ist - denk an andere Datenbanken/Anwendungen!), oder du greifst auf die mysqli Funktionen in PHP zu oder du führst z.B. nach dem mysql_select_db() ein mysql_query("SET NAMES 'utf8';") aus.

Nachtrag: Siehe https://serversupportforum.de/threads/mysql-zeichensatzcodierung-umlaute.16307/, bzw. den dort enthaltenen Link im 1. Posting.
 
Last edited by a moderator:
Back
Top