SQL> SET DEFINE OFF;
SQL> SET LINES 100;
SQL> SET PAGES 50;
SQL> CREATE TABLE TEST_FLASHBACK (ID NUMBER(2) ,NAME VARCHAR2(10));
Table created.
SQL> INSERT INTO TEST_FLASHBACK VALUES(1,'RAJ');
1 row created.
SQL> INSERT INTO TEST_FLASHBACK VALUES(2,'SEKHAR');
1 row created.
SQL> INSERT INTO TEST_FLASHBACK VALUES(3,'JAGA');
1 row created.
SQL> INSERT INTO TEST_FLASHBACK VALUES(4,'SIVA');
1 row created.
SQL> INSERT INTO TEST_FLASHBACK VALUES(5,'SCOTT');
1 row created.
SQL> INSERT INTO TEST_FLASHBACK VALUES(6,'SMITH');
1 row created.
SQL> COMMIT;
Commit complete.
SQL> SELECT * FROM TEST_FLASHBACK;
ID NAME
---------- ----------
1 RAJ
2 SEKHAR
3 JAGA
4 SIVA
5 SCOTT
6 SMITH
6 rows selected.
SQL>
SQL> SELECT * FROM TEST_FLASHBACK;
ID NAME
---------- ----------
1 RAJ
2 SEKHAR
3 JAGA
4 SIVA
5 SCOTT
6 SMITH
6 rows selected.
SQL> DELETE FROM TEST_FLASHBACK WHERE ID IN (4,5,6);
3 rows deleted.
SQL> COMMIT;
Commit complete.
SQL> SELECT * FROM TEST_FLASHBACK;
ID NAME
---------- ----------
1 RAJ
2 SEKHAR
3 JAGA
SQL> FLASHBACK TABLE TEST_FLASHBACK TO TIMESTAMP (SYSTIMESTAMP - INTERVAL '5' MINUTE);
FLASHBACK TABLE TEST_FLASHBACK TO TIMESTAMP (SYSTIMESTAMP - INTERVAL '5' MINUTE)
*
ERROR at line 1:
ORA-08189: cannot flashback the table because row movement is not enabled
SQL> ALTER TABLE TEST_FLASHBACK ENABLE ROW MOVEMENT;
Table altered.
SQL> FLASHBACK TABLE TEST_FLASHBACK TO TIMESTAMP (SYSTIMESTAMP - INTERVAL '5' MINUTE);
Flashback complete.
SQL> SELECT * FROM TEST_FLASHBACK;
ID NAME
---------- ----------
1 RAJ
2 SEKHAR
3 JAGA
4 SIVA
5 SCOTT
6 SMITH
6 rows selected.
SQL>
SQL> SET LINES 100;
SQL> SET PAGES 50;
SQL> CREATE TABLE TEST_FLASHBACK (ID NUMBER(2) ,NAME VARCHAR2(10));
Table created.
SQL> INSERT INTO TEST_FLASHBACK VALUES(1,'RAJ');
1 row created.
SQL> INSERT INTO TEST_FLASHBACK VALUES(2,'SEKHAR');
1 row created.
SQL> INSERT INTO TEST_FLASHBACK VALUES(3,'JAGA');
1 row created.
SQL> INSERT INTO TEST_FLASHBACK VALUES(4,'SIVA');
1 row created.
SQL> INSERT INTO TEST_FLASHBACK VALUES(5,'SCOTT');
1 row created.
SQL> INSERT INTO TEST_FLASHBACK VALUES(6,'SMITH');
1 row created.
SQL> COMMIT;
Commit complete.
SQL> SELECT * FROM TEST_FLASHBACK;
ID NAME
---------- ----------
1 RAJ
2 SEKHAR
3 JAGA
4 SIVA
5 SCOTT
6 SMITH
6 rows selected.
SQL>
SQL> SELECT * FROM TEST_FLASHBACK;
ID NAME
---------- ----------
1 RAJ
2 SEKHAR
3 JAGA
4 SIVA
5 SCOTT
6 SMITH
6 rows selected.
SQL> DELETE FROM TEST_FLASHBACK WHERE ID IN (4,5,6);
3 rows deleted.
SQL> COMMIT;
Commit complete.
SQL> SELECT * FROM TEST_FLASHBACK;
ID NAME
---------- ----------
1 RAJ
2 SEKHAR
3 JAGA
SQL> FLASHBACK TABLE TEST_FLASHBACK TO TIMESTAMP (SYSTIMESTAMP - INTERVAL '5' MINUTE);
FLASHBACK TABLE TEST_FLASHBACK TO TIMESTAMP (SYSTIMESTAMP - INTERVAL '5' MINUTE)
*
ERROR at line 1:
ORA-08189: cannot flashback the table because row movement is not enabled
SQL> ALTER TABLE TEST_FLASHBACK ENABLE ROW MOVEMENT;
Table altered.
SQL> FLASHBACK TABLE TEST_FLASHBACK TO TIMESTAMP (SYSTIMESTAMP - INTERVAL '5' MINUTE);
Flashback complete.
SQL> SELECT * FROM TEST_FLASHBACK;
ID NAME
---------- ----------
1 RAJ
2 SEKHAR
3 JAGA
4 SIVA
5 SCOTT
6 SMITH
6 rows selected.
SQL>
No comments:
Post a Comment