Anda tidak dapat mengembalikan apa yang telah dilakukan. Apa yang dapat Anda lakukan, dalam situasi khusus ini, sebagai salah satu opsi tercepat, adalah mengeluarkan kueri kilas balik terhadap tabel yang telah Anda hapus barisnya dan masukkan kembali. Berikut ini contoh sederhananya:
Catatan :Keberhasilan operasi ini tergantung pada nilai (default 900 detik) undo_retention
parameter - periode waktu (dapat dikurangi secara otomatis) selama informasi undo disimpan di tablespace undo.
/* our test table */
create table test_tb(
col number
);
/* populate test table with some sample data */
insert into test_tb(col)
select level
from dual
connect by level <= 2;
select * from test_tb;
COL
----------
1
2
/* delete everything from the test table */
delete from test_tb;
select * from test_tb;
no rows selected
Sisipkan kembali baris yang dihapus:
/* flashback query to see contents of the test table
as of specific point in time in the past */
select * /* specify past time */
from test_tb as of timestamp timestamp '2013-11-08 10:54:00'
COL
----------
1
2
/* insert deleted rows */
insert into test_tb
select * /* specify past time */
from test_tb as of timestamp timestamp '2013-11-08 10:54:00'
minus
select *
from test_tb
select *
from test_tb;
COL
----------
1
2