以下の内容はhttps://end0tknr.hateblo.jp/entry/20160806/1470428518より取得しました。


mysqlのLOAD DATA LOCAL INFILEによる bulk insert オレオレまとめ

sqlの"--"コメントにも記載していますが、自分としてのポイントは、

  • LOCAL INFILEの"LOCAL"で、"Access denied for user..."のようなエラーになりづらい
  • "\N"としなくても、NULLIF()でnull値をimportできます

かな?

LOAD DATA LOCAL INFILE
'/path/to/import_file.csv'
[REPLACE | IGNORE]
INTO TABLE import_tbl
character set 'utf8'              -- 文字コード
FIELDS TERMINATED BY ','
       OPTIONALLY ENCLOSED BY '"' -- フィールドを囲む文字
       ESCAPED BY '\'             -- エスケープ文字
LINES  TERMINATED BY '\n'
IGNORE 0 LINES                    -- 先頭?行を無視
(field_1,field_2,...)             -- import対象のcolumn
SET                               -- 必要に応じ値を変換
 update_time = NULLIF(update_time, '0000-00-00 00:00:00'), --日時の場合は注意
 field_1     = IF(field_1='A', field_1, null),
;

まぁ、dev.mysql.com/doc に記載の通りなんですけどね。 https://dev.mysql.com/doc/refman/5.6/ja/load-data.html




以上の内容はhttps://end0tknr.hateblo.jp/entry/20160806/1470428518より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14