Hallo,
Ich verwende
um Daten aus einer CSV Datei in die Datenbank zu laden. Probleme habe ich aber wenn ein Feld zwei " enthält wie z.B.:
"154954";"";"9783761549544";"154954000";"Lisa Fuchs";"Schlaumeier - der kleine Fuchs";""Kleine und grosse Überaschungen im Königswald"";"Aussaat Verlag";"7,57";"EUR";"7,50";"0,00";"03/1997";"Buch";"geh.";"31";"30";"Kinderbücher ab 4";"72";"20100831163001";"AV";"16,7 x 24,4 cm";"124.00"
Offensichtlich glaubt MySQL das mit dem 2. " das Feld zu Ende ist und beginnt dann ein neues Feld was natürlich die Zahl der Felder durcheinander bringt und damit den Import dieser Zeile nicht möglich macht.
Warum teilt es die Felder nicht nach ; auf wie angegeben und wie kann ich die Daten korrekt importieren?
Vielen Dank
Martin
Ich verwende
Code:
load data infile '/etc/ARTH1AWYC.csv' into table alpha_artdaten fields terminated by ';' enclosed by '"' lines terminated by '\r\n' (ARTNR, AARTNR, ISBN, BESTNR, AUTOR, TITEL, UTITEL, VERLAG, @BETRAG, WAEHR, @MWST, @ALTEP, ERDAT, DTBEZ, EINBND, ARTLKZ, SEITZL, SGBEZ, SG, AKTDAT, VNR, FORMAT, GEWT) SET BETRAG = replace(@BETRAG, ',', '.'), MWST = replace(@MWST, ',', '.'), ALTEP = replace(@ALTEP, ',', '.');
"154954";"";"9783761549544";"154954000";"Lisa Fuchs";"Schlaumeier - der kleine Fuchs";""Kleine und grosse Überaschungen im Königswald"";"Aussaat Verlag";"7,57";"EUR";"7,50";"0,00";"03/1997";"Buch";"geh.";"31";"30";"Kinderbücher ab 4";"72";"20100831163001";"AV";"16,7 x 24,4 cm";"124.00"
Offensichtlich glaubt MySQL das mit dem 2. " das Feld zu Ende ist und beginnt dann ein neues Feld was natürlich die Zahl der Felder durcheinander bringt und damit den Import dieser Zeile nicht möglich macht.
Warum teilt es die Felder nicht nach ; auf wie angegeben und wie kann ich die Daten korrekt importieren?
Vielen Dank
Martin
Kommentar