はじめに
Oracleで、あるテーブルがいつ削除されたものかを調べるには、RECYCLEBINテーブルを見ると良いです。
RECYCLEBINテーブル
RECYCLEBINをdescすると、以下の結果が得られます。
OBJECT_NAMEはオブジェクトの名前でテーブル以外のファンクションやインデックスなども含まれます。
TYPE='TABLE'のレコードで絞れば、テーブルオブジェクトだけを抽出できます。
CREATETIMEカラムが作成された日時、DROPTIMEが削除された日時です。
名前 Null タイプ -------------- -------- ------------ OBJECT_NAME NOT NULL VARCHAR2(30) ORIGINAL_NAME VARCHAR2(32) OPERATION VARCHAR2(9) TYPE VARCHAR2(25) TS_NAME VARCHAR2(30) CREATETIME VARCHAR2(19) DROPTIME VARCHAR2(19) DROPSCN NUMBER PARTITION_NAME VARCHAR2(32) CAN_UNDROP VARCHAR2(3) CAN_PURGE VARCHAR2(3) RELATED NOT NULL NUMBER BASE_OBJECT NOT NULL NUMBER PURGE_OBJECT NOT NULL NUMBER SPACE NUMBER
特定のテーブルの削除された日時を調べる
たとえば、以下のようなクエリでテーブルの削除日時を知ることができます。
SELECT OBJECT_NAME,ORIGINAL_NAME,CREATETIME,DROPTIME FROM RECYCLEBIN WHERE TYPE='TABLE';[f:id:replication:20150630010456j:plain]