事象
LOAD DATA ステートメントで CSV ファイルをロードすると "Row X was truncated; it contained more data than there were input columns" というワーニングが発生し、全ての行がロードされていない。
mysql> LOAD DATA LOCAL INFILE 'test.csv' INTO TEST FIELDS TERMINATED BY ',' ENCLOSED BY '"'; Query OK, 9 rows affected, 9 warnings (0.04 sec) Records: 9 Deleted: 0 Skipped: 0 Warnings: 9 Warning (Code 1262): Row 1 was truncated; it contained more data than there were input columns Warning (Code 1262): Row 2 was truncated; it contained more data than there were input columns Warning (Code 1262): Row 3 was truncated; it contained more data than there were input columns
原因
- CSV ファイルの改行コードが CRLF になっていたため。
解決策
- CSV ファイルの改行コードを LF に変換してロードした。