MySQL で CSV をインポート
こんな感じ
LOAD DATA INFILE "/path/File.csv" INTO TABLE tablename FIELDS TERMINATED BY ",";
区切り文字を FIELDS TERMINATED BY "," でカンマに指定しています。
デフォルトはタブです。
私はこれをWindowsでやりましたが、CSVファイルの文字コード(SJIS) と
MySQL の文字コード(UTF-8)が違ったため文字化けしました。
そんなときはこのコマンドが使えます。
set character_set_database=sjis;
また、LOAD DATA INFILE でインポートする時、
レコードの区切りは改行で判定しますがその改行コードは LF らしく
CSVファイルの改行コードが CR + LF だと インポートされるデータに CR がついてしまいます。
下記、オプションをつけると区切りの改行コードを CR + LF に変更できます。
LINES TERMINATED BY x'0D0A'
コマンドを流すとこんな感じで結果が出力されます。
Query OK, 1547 rows affected, 1 warning (0.07 sec) Records: 1547 Deleted: 0 Skipped: 0 Warnings: 1
Warnings の内容を見るには下記コマンドを使います。
SHOW WARNINGS;
以上。