カラムの追加

作成済みのテーブルにカラムを追加するにはALTER TABLE文を使います。書式は次の通りです。

ALTER TABLE テーブル名 ADD COLUMN カラム名[ データ型];

対象となるテーブル名と、追加したいカラム名を指定してALTER TABLE文を実行することでカラムを追加することができます。

現在のバージョンではカラムの追加はできても削除はできないようです。

追加したカラムはテーブルの最後に追加されます。またこの構文を使ってカラムを追加する場合、追加するカラムには次の条件を満たしていなければなりません。

1. PRIMARY KEY や UNIQUE 制約は設定できない
2. DEFAULT 制約を設定する時は、CURRENT_TIME/CURRENT_DATE/CURRENT_TIMESTAMP
   は指定できない
3. NOT NULL 制約を設定する時は、NULL以外のデフォルト値の設定が必要

例えば「todo」テーブルに「action」カラムを追加する場合は次のように実行します。

alter table todo add column action;

サンプル

では実際に試してみます。

まずSQLiteコマンドの「.schema」でテーブルのスキーマ一覧を確認します。

p4-1

では「address」テーブルにカラムを追加してみます。

p4-2

TEXT型の「city」カラムを追加しました。では改めてSQLiteコマンドの「.schema」でテーブルのスキーマ一覧を確認します。

p4-3

「address」テーブルに「city」カラムが追加されていることが確認できました。