SQL

【SQL】テーブル作成とデータ型について

SQLiteでテーブルを作成する方法について記述します。

データ型と制約について

テーブルの作成方法を説明する前に、データ型や制約について軽くまとめます。
SQLiteで利用可能なデータ型は下記の通りです。

データ型一覧
  • INTEGER:符号付整数
  • REAL:浮動小数点数
  • TEXT:テキスト
  • BLOB:入力データのまま
  • NUMERIC:上記以外

SQLiteで設定可能な制約は下記の通りです。

制約一覧
  • NOT NULL制約
    → NULL値を指定することができなくなります。
  • DEFAULT制約
    → 値を指定していない場合、設定したデフォルト値が指定されます。
  • CHECK制約
    → 値が条件を満たしているか確認します。
  • PRIMARY KEY制約
    → テーブル内で一意の値となるよう指定されます。
  • AUTOINCREMENT制約
    → PRIMARY KEY制約と組み合わせることで最大の値が指定されます。
  • UNIQUE制約
    → カラムに重複した値を指定できなくなります。

テーブル作成について

テーブルを作成するには「CREATE」文を利用します。
下記は都道府県のテーブルを作成した場合のSQLとなります。

テーブル構成(都道府県)
  • テーブル名
    PREFECTURES
  • カラム
    ID(県番号) REGIONS_CODE(地域番号) NAME(都道府県名) NAME_KANA(都道府県名用のふりがな) CAPITAL(県庁所在地) CAPITAL_KANA(県庁所在地用のふりがな)
CREATE TABLE "PREFECTURES" (
    "ID" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT UNIQUE,
    "REGIONS_CODE" INTEGER NOT NULL,
    "NAME" TEXT,
    "NAME_KANA" TEXT,
    "CAPITAL" TEXT,
    "CAPITAL_KANA" TEXT
);

説明は以上となります。
この記事が誰かの助けになれば幸いです。