MySQL サンプルデータの作成

★サンプルデータとして、郵便番号をインポートした時のメモ

1.ファイルのダウンロードと解凍

[root@ha-01 tmp]# wget http://www.post.japanpost.jp/zipcode/dl/kogaki/zip/13tokyo.zip

[root@ha-01 tmp]# unzip 13tokyo.zip

2.改行コードをCRLFからLFへ変換

[root@ha-01 tmp]# nkf -Lu 13TOKYO.CSV >tokyo.csv

3.文字コードをShift-JISからUTF-8へ変換

[root@ha-01 tmp]# nkf -w --overwrite tokyo.csv

4.MySQLサーバへ接続

[root@ha-01 tmp]# mysql -u root -p

5.データベースの選択

mysql> USE db1

6.テーブル作成

mysql> CREATE TABLE tokyo_postal_code (
    -> public_code char(5) NOT NULL,
    -> old_postal char(5) NOT NULL,
    -> postal_code char(7) NOT NULL,
    -> prefecture_kana varchar(10),
    -> city_kana varchar(100),
    -> town_kana varchar(100),
    -> prefecture varchar(10),
    -> city varchar(100),
    -> town varchar(200),
    -> flag1 int,
    -> flag2 int,
    -> flag3 int,
    -> flag4 int,
    -> flag5 int,
    -> flag6 int
    -> );
Query OK, 0 rows affected (0.00 sec)

7.csvファイルのインポートと確認

mysql> LOAD DATA INFILE '/tmp/tokyo.csv' INTO TABLE tokyo_postal_code
    -> FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"';

mysql> SELECT * FROM tokyo_postal_code LIMIT 1 \G
*************************** 1. row ***************************
    public_code: 13101
     old_postal: 100
    postal_code: 1000000
prefecture_kana: トウキョウト
      city_kana: チヨダク
      town_kana: イカニケイサイガナイバアイ
     prefecture: 東京都
           city: 千代田区
           town: 以下に掲載がない場合
          flag1: 0
          flag2: 0
          flag3: 0
          flag4: 0
          flag5: 0
          flag6: 0
1 row in set (0.00 sec)

mysql>