Случайно удалили парочку таблиц в СУБД Oracle? Не беда! В Oracle есть специальный инструмент восстановления удаленных таблиц (начиная с 10-ой версии), называемой корзиной (recycle bin). Вы уже наверное догадались, что идея корзины взята из операционных систем Windows, MacOS и др. При удалении таблиц они и их индексы не стираются с диска физически, а переименовываются сервером Oracle и перемещаются в специальную область, названную не мудрствуя лукаво "Корзиной".
Посмотреть содержимое корзины можно через представление USER_RECYCLEBIN или просто RECYCLEBIN. Очистка корзины доступна по команде PURGE RECYCLEBIN, а восстановление таблицы - FLASHBACK TABLE.
Теперь рассмотрим пример:
create table TST (COLUMN1 number primary key); insert into TST values (100);
insert into TST values (200); select * from TST;
// удаляем таблицу
drop table TST;
//создаем новую таблицу TST с новыми данными
create table TST (COLUMN1 number primary key); insert into TST values (666);
select * from TST;
// просмотр содержимого корзины:
select * from RECYCLEBIN;
// восстановление таблицы TST под именем TST_OLD
flashback table TST to before drop rename to TST_OLD; select * from TST_OLD;
//очистка корзины
purge RECYCLEBIN;