PURGE
目的
PURGE
文を使用すると、次の操作を実行できます。
-
ごみ箱から表または索引を削除し、そのオブジェクトに関連付けられているすべての領域を解放します。
-
削除された表領域または表領域セットの一部または全部をごみ箱から削除します。
-
ごみ箱全体を削除します。
ノート:
PURGE
文はロールバックできません。また、この文によって消去されたオブジェクトはリカバリできません。
ごみ箱の内容を参照するには、USER_RECYCLEBIN
データ・ディクショナリ・ビューを問い合せます。かわりにRECYCLEBIN
シノニムを使用することもできます。次の2つの文は、同じ行を戻します。
SELECT * FROM RECYCLEBIN; SELECT * FROM USER_RECYCLEBIN;
関連項目:
-
ごみ箱の詳細、およびごみ箱内のオブジェクトのネーミング規則の詳細は、『Oracle Database管理者ガイド』を参照してください。
-
削除した表をごみ箱から取り出す方法については、「FLASHBACK TABLE」を参照してください。
-
削除した表をごみ箱に移動するかを制御する
RECYCLEBIN
初期化パラメータの使用の詳細は、『Oracle Databaseリファレンス』を参照してください。
前提条件
表を消去するには、その表が自分のスキーマ内にあるか、自分にDROP
ANY
TABLE
システム権限が付与されている、あるいはSYSDBA
システム権限が付与されている必要があります。
索引を消去するには、その索引が自分のスキーマ内にあるか、自分にDROP
ANY
INDEX
システム権限が付与されている、あるいはSYSDBA
システム権限が付与されている必要があります。
表領域または表領域セットを消去するには、自分にDROP
TABLESPACE
システム権限が付与されているか、SYSDBA
システム権限が付与されている必要があります。
PURGE
DBA_RECYCLEBIN
操作を実行するには、SYSDBA
またはPURGE
DBA_RECYCLEBIN
システム権限が必要です。
構文
purge::=
セマンティクス
TABLEまたはINDEX
ごみ箱内の消去する表または索引の名前を指定します。ユーザーが指定した元の名前か、オブジェクトの削除時にそのオブジェクトに割り当てられたシステム生成名を指定できます。
-
ユーザー指定の名前を指定した場合、その名前を持つオブジェクトがごみ箱内に複数存在していると、ごみ箱内に最も長く存在しているオブジェクトが消去されます。
-
ごみ箱内のオブジェクトのシステム生成名は一意です。そのため、システム生成名を指定すると、その名前を持つ特定のオブジェクトが消去されます。
表が消去されると、その表のすべての表パーティション、LOBとLOBパーティション、索引、およびその他の依存オブジェクトも消去されます。
TABLESPACEまたはTABLESPACE SET
この句を使用すると、ごみ箱から、指定した表領域または表領域セット内に存在するすべてのオブジェクトを消去できます。
USER user
この句を使用すると、指定したユーザーが、表領域または表領域セット内の領域を再利用できます。この操作は、特定のユーザーの、特定の表領域または表領域セットに対するディスク領域が割当て制限間近である場合に特に役立ちます。
RECYCLEBIN
この句を使用すると、現行のユーザーのごみ箱を空にできます。そのユーザーのごみ箱からすべてのオブジェクトが消去され、そのオブジェクトに関連付けられていたすべての領域が解放されます。
DBA_RECYCLEBIN
この句は、SYSDBA
またはPURGE
DBA_RECYCLEBIN
システム権限を持っている場合にのみ有効です。これを使用すると、システム全体のごみ箱からすべてのオブジェクトを削除できます。これは、各ユーザーのごみ箱を空にすることと同じです。この操作は、以前のリリースへの移行などの場合に役立ちます。
例
ごみ箱からのファイルの削除: 例
次の文は、ごみ箱から表test
を削除します。複数のバージョンのtest表がごみ箱内に存在する場合、Oracle Databaseでは、ごみ箱内に最も長く存在しているものが削除されます。
PURGE TABLE test;
ごみ箱から削除する表のシステム生成名を判断するには、ごみ箱に対するSELECT
文を発行します。そのオブジェクト名を使用して、次の文に類似した文を発行して表を削除できます。(システム生成名は、次の例に示すものとは異なります。)
PURGE TABLE RB$$33750$TABLE$0;
ごみ箱の内容の削除: 例
ごみ箱の内容全体を削除するには、次の文を発行します。
PURGE RECYCLEBIN;