DROP CLUSTER
目的
DROP CLUSTER文を使用すると、データベースからクラスタを削除できます。
ノート:
クラスタを削除すると、ごみ箱内のそのクラスタの一部だった表はごみ箱から消去され、FLASHBACK TABLE操作でもリカバリできなくなります。
個々の表は非クラスタ化できません。そのかわり、次のステップを実行します。
-
既存の表と同じ構成および内容で、新しい表を
CLUSTER句なしで作成します。 -
既存の表を削除します。
-
RENAME文を使用して、新しい表に既存の表の名前を指定します。 -
新しいクラスタ化表に対する権限を付与します。古いクラスタ化表に対する権限は使用できません。
関連項目:
これらのステップの詳細は、「CREATE TABLE」、「DROP TABLE」、「RENAME」および「GRANT」を参照してください。
前提条件
削除するクラスタが自分のスキーマ内にある必要があります。自分のスキーマ内にない場合は、DROP ANY CLUSTERシステム権限が必要です。
構文
drop_cluster::=
セマンティクス
IF EXISTS
IF EXISTSを指定すると、既存のクラスタを削除できます。
schema
クラスタが含まれているスキーマを指定します。schemaを指定しない場合、クラスタは自分のスキーマ内にあるとみなされます。
cluster
削除するクラスタの名前を指定します。クラスタを削除するとクラスタの索引も削除され、その索引のデータ・ブロックを含むクラスタ領域が表領域に戻されます。
INCLUDING TABLES
INCLUDING TABLESを指定すると、クラスタに属するすべての表を削除できます。
CASCADE CONSTRAINTSを指定すると、クラスタに含まれる表の主キーまたは一意キーを参照するクラスタ外の表から、すべての参照整合性制約を削除できます。このような参照整合性制約があるときにこの句の指定を省略した場合、エラーが戻され、クラスタは削除されません。
例
クラスタの削除: 例
次の例では、CREATE CLUSTERの「例」で作成したクラスタを削除します。
次の文は、languageクラスタを削除します。
DROP CLUSTER language;
次の文は、dept_10、dept_20およびこれらの表の主キーまたは一意キーを参照する参照整合性制約とともにpersonnelクラスタを削除します。
DROP CLUSTER personnel INCLUDING TABLES CASCADE CONSTRAINTS;
