Oracle10g Recycle Bin 操作
Oracle10gからテーブル削除をすると、"BIN$XXXXXX..."というテーブルができるようになり、なんだろうと疑問に思っていましたが、"Recycle Bin"という機能ということらしい。"select table_name from user_tables;"でテーブルを確認するとたくさんの"BIN$XXXXXX..."というテーブルができており、テーブル削除が普通にはできない。
- SHOW RECYCLEBIN
- SELECT object_name, original_name, type FROM user_recyclebin;
- FLASHBACK TABLE "[Recycle Bin テーブル名]" TO BEFORE DROP;
- PURGE user_recyclebin;
- DROP TABLE [テーブル名] PURGE;
"FLASHBACK TABLE"で元のテーブルに戻すのですが、保持されていたデータまで元に戻るのでちょっとうれしい機能ではあります。確かに誤ってテーブルを削除した場合にはとても便利ですが、別のところ(user_tablesでは無いところ)に隠されていてもいい気がしますね。