11.1.2 実表に列を追加する方法
実表に列を追加する場合,定義系SQLのALTER TABLE文を実行します。
実表を定義したHADBユーザが,ALTER TABLE文で列を追加できます。
なお,追加できる列は1列だけであり,実表の最後の列に追加されます。追加した列にはナル値が格納されます。
実表に列を追加する指定例を次に示します。
- 指定例
-
店舗表(SHOPSLIST)に,列名「EMAIL_ADDRESS」を追加します。列名「EMAIL_ADDRESS」のデータ型はVARCHAR(100)とします。
ALTER TABLE "SHOPSLIST" ADD COLUMN "EMAIL_ADDRESS" VARCHAR(100)
ALTER TABLE文を実行する際,列定義にNOT NULLやBRANCHも指定できます。ALTER TABLE文の指定形式および規則については,マニュアルHADB SQLリファレンスの定義系SQLのALTER TABLE(表定義の変更)を参照してください。
なお,次に示す場合はALTER TABLE文による列追加はできません。
-
操作対象の実表が更新不可状態の場合
-
操作対象の実表が,行を格納するセグメントが割り当てられている状態であり,かつFIX表の場合
-
操作対象の実表が,行を格納するセグメントが割り当てられている状態であり,かつCREATE TABLE文を実行した際にBRANCH ALLを指定した実表の場合
-
行を格納するセグメントが割り当てられている状態の実表に対して,ALTER TABLE文の列定義でNOT NULLを指定した場合
上記のどれかに該当して列を追加できない場合は,「16.8.2 実表に列を追加できない場合」を参照してください。
行を格納するセグメントが割り当てられている状態については,「5.3.1 B-treeインデクスを定義する場合の注意点(B-treeインデクスの未完状態)」を参照してください。