2017-08-21 7 views
2

100以上の行を持つcsvファイルからmysqlを挿入しようとしています。 の説明フィールドがありますので、そのフィールドにのカンマがあり、おそらくと入力されています。mysqlがLOADデータの文字列としてフィールドを解釈する方法

私はそれはそれは、次のフィールドにスキップし、コンマを見つけたので、それは間違ったデータ

LOAD DATA infile 'objeto.csv' 
INTO TABLE objeto 
fields terminated BY "," 
lines terminated BY "\n" 

でフィールドを埋めるたびしかしここだ、データベースへのシートまでの下に、このコマンドを実行していますよ説明の1つの例:

Explora lapresiónporpresmónpor encima y debajo del agua VeはコモCAMBIAラ presiónA medida QUE cambiasロスfluidos、ラgravedad、ラ・フォーマ・デル contenedor、Yエルvolumen私は "" を "/" またはからに変更しようとしました

" - " が、それでもまだ間違っているかNULLでいっぱいになっています

私が気づいているもう一つの修正点は、フィールド全体を文字列として見るようにしようとしていることです。しかし、それが可能なのかどうかはわかりません...

私はこれまでのところどのような修正も見つかりませんでした。

+1

この場合の区切り文字(カンマがある場合)、これらのデータ;だから、

、誰もこれに実行する場合、私はcsvファイルをいじり周りの仕事でそれを修正しようと、役立つかもしれません値は引用符で囲む必要があり、 '' ''で囲まれた '' columns ''のような節を使う必要があります。 –

+0

ええ、私は引用した解決を知っています。 100以上の説明があるので、これが唯一の方法だと私は仕事に就く必要がありますが、周りには何の問題もありませんか?:3 – doofz

答えて

0

この種の問題を抱えている人に役立つ簡単な回避策が見つかりました。私は、SQLの修正などを探す代わりに、csvファイルを使いこなし始めました。 私はかなり単純に修正して、シートに入ってフィールドセパレータを ";"にしました。 "、"の代わりに、ファイル内のすべてのセミコロンを変更しなければなりません。その後、カラム内)

関連する問題