Lade utf-8 kodierten Text in MySQL-Tabelle
Ich habe eine große CSV-Datei, die ich laden Sie es in eine MySQL-Tabelle. Doch diese Daten sind kodiert in utf-8-format, denn Sie enthalten einige nicht-englische Zeichen.
Ich habe bereits den Zeichensatz der entsprechenden Spalte in der Tabelle auf utf-8. Aber wenn ich es lade meine Datei. die nicht-englische Zeichen verwandeln sich in komische Zeichen(wenn ich ein select auf meinem Tisch Zeilen). Muss ich encode meine Daten, bevor ich den laden in die Tabelle? wenn ja, wie Kann ich dies tun. Ich bin mit Python um die Daten zu laden und mit LOAD DATA LOCAL INFILE-Befehl.
Dank
InformationsquelleAutor der Frage Hossein | 2011-02-10
Du musst angemeldet sein, um einen Kommentar abzugeben.
wie gesagt in http://dev.mysql.com/doc/refman/5.1/en/load-data.html,
Sie können die Zeichenkodierung verwendet, die durch Ihre CSV-Datei mit dem "CHARACTER SET" optionale parameter von LOAD DATA LOCAL INFILE
InformationsquelleAutor der Antwort dweeves
Versuchen
InformationsquelleAutor der Antwort JMHeap
Senden Sie
wenn dabei MySQLdb.connect()
z.B.
edit: ah, sorry, ich sehe, Sie haben Hinzugefügt, dass Sie mit "LOAD DATA LOCAL INFILE" - dies war nicht klar, aus Ihre erste Frage 🙂
InformationsquelleAutor der Antwort simon
Brauchen nicht die Kodierung von Zeichen in der Datei, aber Sie müssen sicherstellen, dass Ihre Datei Codierung in UTF-8 vor dem laden dieser Datei in die Datenbank.
InformationsquelleAutor der Antwort BuiXuanThanh