MySQLにCSVでインポート

これはver3のころよくやっていた方法ですがここ数年ずっと使用してなくて思い出すように検索してました。一応健忘録。

以下は全フィールドでのインポート・エクスポートに難がある場合に使用します。
※主キーが内容に特別意味を持たないauto_incrementの場合等、インポート時にキー重複でエラーになると困るもの。

CSVにおいてもエクスポート・インポート共にフィールド指定。

【エクスポート】
mysql> select text,cre_date into outfile ‘/tmp/db.tsv’ lines terminated
by ‘n’ from csvtest;
Query OK, 24 rows affected (0.00 sec)

【インポート】
mysql> load data infile ‘/tmp/db.tsv’ into table csvtest lines
terminated by ‘n’ (text,cre_date);
Query OK, 24 rows affected (0.00 sec)
Records: 24 Deleted: 0 Skipped: 0 Warnings: 0

但しtimestampのフィールドは00000000000000になったので無視できないですね。