file.txt wird in ISO-8859-1 oder Windows-1252 gespeichert (diese beiden sind sehr ähnlich) und wird von MySQL als UTF-8 interpretiert. Diese sind nicht kompatibel.
Wie kann ich das feststellen?
- Siehe Punkt 3.:Die Datei wird korrekt angezeigt, wenn sie als ISO-8859-1 oder Windows-1252 interpretiert wird.
- Siehe Punkt 1.:character_set_database :utf8
Lösung:Konvertieren Sie die Datei entweder in UTF-8 oder weisen Sie MySQL an, sie als ISO-8859-1 oder Windows-1252 zu interpretieren.
Hintergrund:Die von Ihnen bereitgestellten Zeichen (ã usw.) sind Single-Byte-Werte in Windows-1252, und diese Bytes sind illegale Werte in UTF-8, was zu den '?'s (Unicode-Ersatzzeichen) führt.
Ausschnitt aus MySQL-Dokumentation :