0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Oracle 圧縮表に"DEFAULT"指定付きのALTER文を適用する方法

Posted at

表圧縮についてはこちら
https://docs.oracle.com/cd/E57425_01/121/ADMIN/tables.htm

Oracleでは、圧縮表に対して"DEFAULT"指定のALTER文実行すると、以下のようにORA-39726エラーが発生する。

SQL> alter table SAMPLE_TABLE add SAMPLE_COL char(1) default '0';
alter table SAMPLE_TABLE add SAMPLE_COL char(1) default '0'
                                        *
行1でエラーが発生しました。:
ORA-39726: 圧縮表での列の追加/削除操作はサポートされていません

さすがに圧縮表をもとに戻すのも面倒なので、
ALTER文を、列追加とデフォルト値設定の二つの文に分けて実行する。

SQL> alter table SAMPLE_TABLE add SAMPLE_COL char(1);

表が変更されました。

SQL> alter table SAMPLE_TABLE modify SAMPLE_COL default '0';

表が変更されました。
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?