LOAD DATA INFILE, UTF8 und phpMyAdmin, Sonderzeichen zicken beim csv import.

gutschy

Aktiver Benutzer
Beiträge
32
Hallo Leute,
eigentlich hatte ich das UTF8 Problem schon gelöst. Wenn ich über Python auf MySQL zugreife stelle ich einfach bei den Zugangsdaten ein charset='utf8' dazu und die Sonderzeichen sind kein Problem mehr.

Leider will aber ein "LOAD DATA LOCAL INFILE" nicht mit Python zusammenarbeiten, es geht dabei wohl um Sicherheits Aspekte, die sich aber umschiffen lassen wenn man ein wenig mehr von der Materie verstehen würde. Ich habe es aber nicht kapiert.

"LOAD DATA LOCAL INFILE" lässt sich aber direkt in phpMyAdmin eingeben, dort läuft es, nur hab ich noch nicht umrissen wie ich diesen Ausdruck UTF8 tauglich mache:

Code:
LOAD DATA LOCAL INFILE
'/media/daten1.csv'
INTO TABLE daten_table FIELDS TERMINATED BY ',' ENCLOSED BY '"'
LINES TERMINATED BY '\n' IGNORE 1 LINES
(laden_name, vorwahl, telenr1, strasse, hausnr, ort, linkname1, linkname2, linkname3, forum_link,
link2, link3)

Jemand eine Idee?

Gruss,

Gutschy
 
Werbung:
Hallo Leute,
eigentlich hatte ich das UTF8 Problem schon gelöst.


Wenn ich aus der Doku

Code:
Der von der Systemvariablen character_set_database angegebene Zeichensatz wird zur Interpretation der Daten in der Datei verwendet. SET NAMES und die Einstellung von character_set_client wirken sich hingegen nicht auf die Interpretation der Eingabe aus.

richtig parse, ist alles, was Du tun mußt, dafür zu sorgen, daß die eingelesenen Daten passend zum Charset der DB sind. Dabei können iconv und seine Freunde sicher helfen.

https://dev.mysql.com/doc/refman/5.1/de/load-data.html
 
Werbung:
Zurück
Oben