【Oracle】ALTER TABLE文でテーブルの変更を行う方法

Oracleデータベースでテーブルを変更する必要がある場合、ALTER TABLE文を使用します。この記事では、ALTER TABLE文の基本的な使い方を解説します。テーブルに新しい列を追加したり、既存の列のデータ型を変更したりする方法について学びましょう。

テーブルに列を追加する

ALTER TABLE文を使用すると、既存のテーブルに新しい列を追加できます。例えば、従業員情報を管理するテーブルに給与情報の列を追加する場合、次のようなALTER TABLE文を使用します。

ALTER TABLE employees
ADD salary NUMBER;

列のデータ型を変更する

既存の列のデータ型を変更する場合も、ALTER TABLE文を使用します。例えば、給与情報の列のデータ型を変更して小数点以下2桁まで表示する場合、次のようなALTER TABLE文を使用します。

ALTER TABLE employees
MODIFY salary NUMBER(10,2);

列の削除

テーブルから列を削除する場合は、ALTER TABLE文のDROP COLUMN句を使用します。

ALTER TABLE employees
DROP COLUMN old_column;

ここで、old_columnは削除したい列の名前です。

制約の追加と削除

テーブルに制約を追加するには、ALTER TABLE文のADD CONSTRAINT句を使用します。

ALTER TABLE employees
ADD CONSTRAINT pk_employee_id PRIMARY KEY (employee_id);

ここで、pk_employee_idは制約の名前であり、PRIMARY KEY制約を示します。さらに、employee_idは主キーとして設定したい列です。

また、制約を削除する場合は、ALTER TABLE文のDROP CONSTRAINT句を使用します。

ALTER TABLE employees
DROP CONSTRAINT pk_employee_id;

テーブル名の変更

テーブル名を変更するには、ALTER TABLE文のRENAME TO句を使用します。

ALTER TABLE old_table_name
RENAME TO new_table_name;

ここで、old_table_nameは変更前のテーブル名であり、new_table_nameは変更後のテーブル名です。

列名の変更

列名を変更するには、ALTER TABLE文のRENAME COLUMN句を使用します。

ALTER TABLE employees
RENAME COLUMN old_column TO new_column;

ここで、old_columnは変更前の列名であり、new_columnは変更後の列名です。

まとめ

ALTER TABLE文を使用すると、列の追加や削除、制約の追加や削除、テーブル名や列名の変更など、さまざまなテーブルの変更を行うことができます。データベースの構造を柔軟に変更する必要がある場合は、ALTER TABLE文を使用して必要な変更を行いましょう。