MySQL

MySQL - csvデータをデータベースに格納する方法

More than 3 years have passed since last update.

mysqlにcsv形式のデータを格納する方法を調査した時のメモ

[例]ローカルにあるcsvファイル先頭1行読み飛ばして格納するコマンドサンプル


1.「LOAD DATA文」を使用する方法

LOAD DATA LOCAL INFILE '<CSV_FILE>'

INTO TABLE <TABLE_NAME>
FIELDS TERMINATED BY ","
ENCLOSED BY '"'
LINES TERMINATED BY '\n'
IGNORE 1 LINES
;


2.「mysqlimport」を使用する方法

mysqlimport -u<USER> -p --fields-terminated-by="," --fileds-enclosed-by='"' --lines-terminated-by"\n" --ignore-lines=1 --local <DB> <CSV_FILE>

「mysqlimport」の場合、格納するテーブルはcsvファイル名に依存しているようなので、「LOAD DATA」のほうが柔軟性が良さそう


※参考

http://makaaso.hatenablog.com/entry/2015/10/26/191816