CSVファイルのデータをDBに突っ込む方法を調べたので備忘録的まとめ。
ちなみに、突っ込みたいCSVファイルはこんな感じ。
user_id | install_datetime | delete_flg |
---|---|---|
10001 | 2016-03-19 15:45:00 | 0 |
10002 | 2016-03-21 12:30:00 | 1 |
10003 | 2016-03-23 09:15:00 | 0 |
10004 | 2016-03-25 06:00:00 | 0 |
10005 | 2016-04-02 10:00:00 | 1 |
10006 | 2016-04-02 12:50:00 | 0 |
10007 | 2016-04-30 15:00:00 | 0 |
※DBを作っていない方はこちらを参照
【初心者向け】MySQLでローカルにDBを作成する方法
1.テーブル作成
mysql> create table user_master(
-> user_id int,
-> install_datetime timestamp,
-> delete_flg int,
-> primary key(user_id)
-> );
Query OK, 0 rows affected (0.01 sec)
今回自分が必要なテーブルを作成した。
テーブル作成方法についてはググればたくさん出てくるのでそちらを参照のこと。
2.テーブルの確認
mysql> show tables;
+------------------+
| Tables_in_testdb |
+------------------+
| user_master | // テーブルができている
+------------------+
1 row in set (0.01 sec)
3.テーブルの中身を確認
mysql> select * from user_master;
Empty set (0.00 sec)
今はまだ何も入っていない
4.CSVファイルをテーブルにインポート
mysql> load data local infile "Downloads/user_master.csv" // インポートするファイルのパス
-> into table user_master // 突っ込むテーブル名
-> fields terminated by ',' // 何でデータを区切るか(CSVの場合は",")
-> ;
Query OK, 8 rows affected, 10 warnings (0.02 sec)
Records: 8 Deleted: 0 Skipped: 0 Warnings: 10
5.テーブルを確認
mysql> select * from user_master;
+---------+---------------------+------------+
| user_id | install_datetime | delete_flg |
+---------+---------------------+------------+
| 10001 | 2016-03-19 15:45:00 | 0 |
| 10002 | 2016-03-21 12:30:00 | 1 |
| 10003 | 2016-03-23 09:15:00 | 0 |
| 10004 | 2016-03-25 06:00:00 | 0 |
| 10005 | 2016-04-02 10:00:00 | 1 |
| 10006 | 2016-04-02 12:50:00 | 0 |
| 10007 | 2016-04-30 15:00:00 | 0 |
+---------+---------------------+------------+
8 rows in set (0.00 sec)
これでデータが入った。