mk-mode BLOG

このブログは自作の自宅サーバに構築した Debian GNU/Linux で運用しています。
PC・サーバ構築等の話題を中心に公開しております。(クローンサイト: GitHub Pages

ブログ開設日2009-01-05
サーバ連続稼働時間
Reading...
Page View 合計
Reading...
今日
Reading...
昨日
Reading...

MySQL - CSV データインポート!

[ サーバ構築 ] [ MySQL ]

こんばんは。

過去には、テーブルデータを CSV 出力する方法を記事にしていました。

今回は、MySQL データベースのテーブルへ CSV ファイルからデータをインポートする方法についてです。

普段頻繁に利用しない方法なので、備忘録として残しておきます。

0. 前提条件

  • OS や MySQL のバージョンは特に問わないはず。(MariaDB も同じ)
  • インポート先 DB に該当のテーブルが作成済みである。
  • 読み込む CSV ファイルの項目数・属性がインポート先テーブルのカラム数と一致している。
  • 読み込む CSV ファイルにはヘッダ行は存在しない。(1行目からデータとなっている)
  • CSV ファイルもテーブルも同じ文字コード(当方は “UTF-8")になっている。 (CSV ファイルとテーブルとで文字コードが異なると文字化けするかもしれない(未確認))

1. インポート方法

MySQL サーバに root でログインし、以下のようにに実行する。
以下は、"hoge.csv" という CSV ファイルを “hoge” というデータベースの “hogehoge” テーブルにインポートする例。

1
2
> use hoge;
> LOAD DATA INFILE 'hoge.csv' INTO TABLE `hogehoge` FIELDS TERMINATED BY ',' ENCLOSED BY '"';
  • FIELDS TERMINATED BY ',' はデータが , で区切られているという意味。
  • ENCLOSED BY '"' は各データが " で囲われているという意味。
    (各データが " で囲まれていなければ不要)

2. 参考サイト


めったに使用することはないが、データベース移行時等に備えて記録しておいた次第です。

以上。

Comments