----------------------------------------------------------------------- -- Flashback Table ----------------------------------------------------------------------- SELECT * FROM todays_special_offers WHERE PRODUCT_ID = ‘SP1300’; FLASHBACK TABLE todays_special_offers TO TIMESTAMP TO_TIMESTAMP('2004-JUL-07 13:00:00', 'YYYY-MON-DD HH24:MI:SS'); SELECT * FROM todays_special_offers WHERE PRODUCT_ID = ‘SP1300’; ALTER TABLE todays_special_offers ENABLE ROW MOVEMENT; ----------------------------------------------------------------------- -- Flashback Drop ----------------------------------------------------------------------- SELECT object_name as recycle_name FROM recyclebin WHERE original_name = ‘YEAR’ AND type = ‘TABLE’; FLASHBACK TABLE easydw.year TO BEFORE DROP; DROP TABLE easydw.year PURGE; PURGE TABLE easydw.year; ----------------------------------------------------------------------- -- Flashback Query ----------------------------------------------------------------------- SELECT SUM(ps.purchase_price) FROM purchases ps; SELECT SUM(ps.purchase_price) FROM purchases AS OF TIMESTAMP ('2004-JUL-07 9:30:00', 'YYYY-MM-DD HH24:MI:SS') ps; --Step 1. enable flashback execute DBMS_FLASHBACK.ENABLE_AT_TIME( - TO_TIMESTAMP('2004-JUL-07 9:30:00', 'YYYY-MM-DD HH24:MI:SS')); --Step 2. issue the query SELECT SUM(ps.purchase_price) FROM purchases; --Step 3. disable flashback execute DBMS_FLASHBACK.DISABLE; ----------------------------------------------------------------------- -- Flashback Database ----------------------------------------------------------------------- ALTER DATABASE ARCHIVELOG; STARTUP MOUNT EXCLUSIVE; ALTER DATABASE FLASHBACK ON; FLASHBACK DATABASE TO TIMESTAMP TO_TIMESTAMP(’2004-JUL-07 12:00:00’,’YYYY-MON-DD HH24:MI:SS’); ALTER DATABASE OPEN RESETLOGS; -----------------------------------------------------------------------