テーブル削除、復活(DROP、FLASHBACK TABLE)について

Oracle10gからテーブルの削除(DROP TABLE)に「ごみ箱」(RECYCLEBIN:リサイクルビン)の機能が追加されました。
以下のようなSQLでテーブルを削除した場合は、テーブルは、直ちに削除されずに「ごみ箱」(RECYCLEBIN:リサイクルビン)に移されます。
テーブルオブジェクトは作成されたときと同じ領域を占有しています。
アプリケーションによっては「ごみ箱」(RECYCLEBIN:リサイクルビン)テーブル情報も表示されるので注意が必要です。
但し、SYSTEM表領域に表を作成していた場合は、「ごみ箱」に移されることなく直ちに削除されます。

DROP TABLE テーブル名 CASCADE CONSTRAINTS;
「ごみ箱」に移されたテーブルは、「BIN$~」で始まるテーブル名にされます。 「ごみ箱」に移されたテーブル名は、SQL*Plusなどで「SHOW RECYCLEBIN」コマンドを実行することで見ることが出来ます。 「ごみ箱」に移されたテーブルを削除するには下のSQLで削除します。
-- ユーザー毎の「ごみ箱」に移されたテーブルを削除する
PURGE RECYCLEBIN;
-- システム全体で「ごみ箱」に移されたテーブルを削除する
PURGE DBA_RECYCLEBIN;

PURGE:パージ(解放)句について

Oracle10g以前の従来通り直ちに物理的削除する場合は、「PURGE」:パージ(解放)句が必要となります。

DROP TABLE テーブル名 CASCADE CONSTRAINTS PURGE;

削除テーブルのFLASHBACK:フラッシュバック(復活)について

削除されて「ゴミ箱」(RECYCLEBIN)にあるテーブルを元に戻したい場合は、以下のSQLで復活します。

FLASHBACK TABLE テーブル名 TO BEFORE DROP;

inserted by FC2 system