Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Kann die Kodierung in MySQL nicht richtig hinbekommen

Was auch immer mit Ihren Charakteren passiert, passiert, bevor sie MySQL erreichen, denke ich. Zeichen werden vom Computer in Zahlen umgewandelt, wenn wir die Zeichen eingeben. Dann reisen diese Nummern von hier nach dort, zwischen Webformularen und Servern, Webservern und Skriptinterpretern, dann Datenbankservern und auf demselben Weg zurück zu Webseiten.

Wo und wie geben Sie Ihre Daten ein? Daten sollten so ausgegeben werden, wie sie eingegeben wurden. Wenn Ihre Daten über Webformulare bereitgestellt werden, überprüfen Sie die Kodierungen Ihrer Webseiten und die Art und Weise, wie Sie Formulare übermitteln. Wie Sie sie in Ihre PHP-Skripte bekommen und wie Sie sie an den Datenbankserver senden. Der Schuldige hier ist wahrscheinlich nicht MySQL, sondern ein anderer Ort. Es kann auch MySQL sein; aber es ist nicht der einzige Ort für mögliches Fehlverhalten und das ist es wahrscheinlich auch nicht.

Überprüfen Sie Ihre Seiten, überprüfen Sie die Kopfzeilen, wenn sie in Ihrem Browser ankommen.

Zu den Kommentaren, die Ihre Frage erhalten hat, nein, es ist nicht gut, ISO5 zu verwenden, da Sie mehrere ISO5-Familien benötigen. Sie müssen die meiste Zeit mit einer Unicode-Codierung arbeiten, die beste ist utf-8. Außerdem geht es hier nicht darum, welche MySQL-Bibliothek Sie verwenden, es sei denn, diese Bibliothek enthält einige bekannte Fehler, was für etwas so Altes sehr unwahrscheinlich ist. :) Sie sollten immer noch die empfohlenen Best Practices verwenden. Ihr aktuelles Problem hängt jedoch nicht mit der von Ihnen verwendeten Bibliothek zusammen. Das Übel liegt im Unterschied zwischen der Art und Weise, wie Sie Ihre Daten eingeben und wie Sie sie anzeigen.