コンテンツにスキップ

第2章 テーブル

2.1 テーブルの構造

SQLiteでは各テーブルは1つのファイルの中に所属している。 例えばhanbai.dbファイルの中にshouhinテーブルを作成する。

shouhinテーブル

sid sname tanka
1 りんご 200
2 みかん 150
3 いちご 200

shouhinテーブルは3つの列からなり、それぞれにデータ型がある。

  • sid INTEGER型
  • sname TEXT型
  • tanka INTEGER型

さらに各列には制約を設定することができる。

  • PRIMARY KEY : 主キーとする
  • NOT NULL : NULL(データ無し)を許可しない
  • DEFAULT [デフォルト値] : 初期値設定
  • UNIQUE : 他と重複しない

2.2 主キー

通常はテーブルのどれかの列を主キー(PRIMARY KEY)にする。主キーは行をはっきりと区別するためのものである。自動的にUNIQUE(重複しない)であり、NOT NULL である。

shouhinテーブルではsidが主キーとなっている。

また、SQLiteの場合、整数型の主キーは行挿入時に自動的に連番が設定される(値を指定しない場合)。

2.3 外部キー

uriageテーブルの主キーはuidである。 また、sidの列にはshouhinテーブルの主キーであるsidが入る。

このように他テーブルの主キーを格納し、他のテーブルとリレーション出来るようにするための列を外部キーという。

uid sid kosu hi
1 1 5 2023-10-31
2 2 3 2023-10-31
3 3 1 2023-10-31
4 1 2 2023-11-01
5 2 1 2023-11-01