目次へ
2.5.2. テーブルの作成

リレーショナルデータベースには、データの“入れ物”が必要です。この入れ物のことをテーブルと呼びます(1.5 リレーショナル型データベース 参照)。ここでは、テーブルの作成方法について簡単に説明します。詳細な説明は後述します。

表を作成するときには、CREATE TABLE 文を使用します。CREATE TABLE の後に続ける名称が表の名称となります。また、その後ろの部分でカッコで囲んでフィールド名称、つまり列名とデータ型やその桁数などを設定します。

仮に下のような商品表、得意先表、受注表の 3つの表を作成するとします。

商品表、得意先表、受注表

上の 3つの表は、次の SQL により定義します。

/* 商品表の定義 */
  
  CREATE TABLE 商品表
  (
    商品コード   CHAR(4),
    商品名       CHAR(16),
    単価         INTEGER,
    PRIMARY KEY(商品コード)
  );

/* 得意先表の定義 */

  CREATE TABLE 得意先表
  (
    得意先コード CHAR(5),
    得意先名     CHAR(16),
    PRIMARY KEY(得意先コード)
  );

/* 受注表の定義 */

  CREATE TABLE 受注表
  (
    受注番号     INTEGER,
    得意先コード CHAR(5),
    商品コード   CHAR(4),
    受注個数     INTEGER,
    納品日       CHAR(8),
    PRIMARY KEY(受注番号),
    FOREIGN KEY(得意先コード) REFERENCES 得意先表(得意先コード),
    FOREIGN KEY(商品コード) REFERENCES 商品表(商品コード)
  );

PRIMARY KEY 文で主キーが何であるのかを定義しています。商品表では商品コード、得意先表では得意先コード、受注表では受注番号を示しています。また、受注表では外部キーを持っているため、これを FOREIGN KEY 文によって定義しています。

"FOREIGN KEY(得意先コード) REFERENCES 得意先表 (得意先コード)"の部分では、「受注表の得意先コードを外部キーとして定義し、得意先表の得意先コードという列を参照するものとする」ということを宣言しているわけです。

これらの文を実行することによって、それぞれの表はデータベース上に実際に確保されることになるのです。

関連記事

↑このページの先頭へ

こちらもチェック!

PR
  • XMLDB.jp
  • シナジーマーケティング研究開発グループブログ
Loading