データベース - SQL 基本構文 - ALTER TABLE その他

 
1. カラムの型を変更
2. カラム名を変更
3. カラム削除
4. IBM DB2 で SQL0668N となるとき
5. PostgreSQL で varchar のバイト数を変更する

1. カラムの型を変更

 既存のテーブルの既存の列の型を変更します。  ORACLE での基本形は下記の形になります。

ALTER TABLE
    テーブル名
MODIFY
    (
     カラム名1 データ型
    ,カラム名2 データ型
    , ...
    )
;
 DB2 での基本形は下記の形になります。

ALTER TABLE
    テーブル名
ALTER COLUMN
    カラム名
SET DATA TYPE
    データ型
;

2. カラム名を変更

 既存のテーブルの既存の列名を変更します。  DB2 での基本形は下記の形になります。

ALTER TABLE
    テーブル名
RENAME COLUMN
    旧カラム名
TO
    新カラム名
;

3. カラム削除

 既存のテーブルから列を削除します。基本形は下記の形になります。

ALTER TABLE
    テーブル名
DROP COLUMN
     カラム名1
;

4. IBM DB2 で SQL0668N となるとき

 IBM DB2 で前項までの SQL で変更したテーブルにアクセスするとき「SQL0668N」「理由コード 7」「表は REORG ペンディング状態です。 これは、REORG の推奨対象となる操作が含まれる ALTER TABLE ステートメントの後に発生する可能性があります。」といエラーとなることがあります。  こういうときは

REORG TABLE
    テーブル名
;
 でたいてい解消されます。

5. PostgreSQL で varchar のバイト数を変更する

 PostgreSQL で varchar のバイト数を変更するには

ALTER TABLE
    テーブル名
ALTER COLUMN
     カラム名 TYPE VARCHAR(バイト数)
;