SQL テーブルに列(カラム)を追加をする方法
SQL
でテーブルに列(カラム)を追加するにはALTER TABLE
文を使用します。
(既に存在しているカラムの定義情報を変更したい場合はSQL テーブルの列(カラム)の定義情報を変更する方法を参照してください。)
以下のようにALTER TABLE xxx ADD
のxxx
でテーブル名を指定します。
そのあとに、追加したいカラム名と型(桁数)をカンマ区切りで指定します。
ALTER TABLE employee ADD (
last_name VARCHAR2(20),
age NUMBER(3,0)
)
カラムの制約を追加する
SQL CREATE文でテーブルを新規作成するで紹介した方法と同じように、NOT NULL
などの制約を追加するには以下のようにします。
カラムの型名の後に制約を記載していきます。
ALTER TABLE employee ADD (
last_name VARCHAR2(20) DEFAULT '名無し' NOT NULL,
age NUMBER(3,0) NOT NULL
)
すでに対象のテーブルにレコードが存在する状態で、NOT NULL
制約のあるカラムを追加すると以下のエラーが発生します。
ORA-01758: 必須列(NOT NULL)を追加するには、表を空にする必要があります。
エラー内容の説明通り、対象のテーブルのレコードを空にする必要があるので、注意が必要です。