標籤:
在9i上執行的操作
查詢test表中記錄
select * from test;
刪除test表中記錄
delete from test;
獲得過去的會話
exec dbms_flashback.disable;
查詢出3分鐘前這個test表的情況
select * from test as of timestamp(systimestamp - interval ‘3‘ minute );
將查出的記錄插入到誤刪除資料的表中
insert into test select * from test as of timestamp(systimestamp - interval ‘30‘ minute );
兩種方法:
1、使用dbms_flshback
閃回:DBMS_FLASHBACK.enable_at_time(to_timestamp(‘2006-5-24 8:26:0‘, ‘yyyy-mm-dd hh24:mi:ss‘))
_changexec dbms_flashback.enable_at_systeme_number(4143031890000);--change number
取消閃回:exec dbms_flashback.disable
2、語句級
select * from dept as of scn 4143031890000);--change number
select * from dept as of timestamp(to_timestamp(‘2006-5-24 8:26:0‘, ‘yyyy-mm-dd hh24:mi:ss‘));
在10G上執行的操作
例:執行將test表閃回到2005年5月7日下午3點。
SQL>flashback table test to timestamp to_timestamp(‘2005-05-07 15:00:00‘,‘yyyy-mm-dd hh24:mi:ss‘);
修改資料庫中某些欄位存在的空格
update laagent set name=replace(name,‘ ‘,‘‘) where agentcode=‘116000001‘
【轉】oracle回閃操作