Linuxサーバより愛を込めて。

Linux(Ubuntu)サーバとダーツを愛する中年サラリーマンの日記。

Linuxサーバ

MySQLでテーブルを作成してみる

MySQLサーバ内にテーブルを作成してみます。

 

テーブル作成を行うSQLは

 

create table テーブル名(フィールド名1 データ型,フィールド名2 データ型,・・・);

 

にて行います。

 

データ型には

  • 数値型
  • 日付型
  • 文字列型

などがあり、それぞれに幾つかの種類があるようになっています。

 

今回は住所録を作成してみようかと思っているので、郵便局からダウンロードできるCSVファイルを取込できるテーブルを作成しようと思います。

 

取り込む項目を検討した結果、以下の通りの構成にしました。

  1. 地方公共団体コード・・・varchar(6)
  2. 旧郵便番号・・・varchar(5)
  3. 郵便番号・・・varchar(7)
  4. 都道府県名カナ・・・varchar(20)
  5. 市町村名カナ・・・varchar(40)
  6. 町域名カナ・・・varchar(50)
  7. 都道府県名漢字・・・varchar(10)
  8. 市町村名漢字・・・varchar(20)
  9. 町域名漢字・・・varchar(20)

 

これを上記の構文に当てはめると

use ryo

create table T_郵便番号 (
地方公共団体コード int(8),
旧郵便番号 int(5),
郵便番号 int(7),
都道府県名カナ varchar(20),
市町村名カナ varchar(40),
町域名カナ varchar(50),
都道府県名漢字 varchar(10),
市町村名漢字 varchar(20),
町域名漢字 varchar(20)
);

 

となります。

 

先頭の「use ryo」

 

は使用するデータベース名を指定しています。

SQL内で指定しておけばMySQLのコンソールであらかじめ使用するデータベースを指定する必要がなくなりますので。

 

そして作成したSQLファイルをサーバ内の任意のディレクトリに保存したらサーバのMySQLを起動します。

 

mysql -u ○○ -p

パスワード

 

起動したら

 

source ファイル名

 

にて実行します。ファイル名はフルパスで指定しましょう。

 

こうすることでいちいちコンソールにSQLを入力しなくても簡単に実行できることが分かりました。

 

次はCSVファイルを取り込む手法について検討したいと思います。

-Linuxサーバ
-, , , , ,