Você está na página 1de 2

SCN(System Change Number) - Nmero de Mudana do Sistema Para descobrir quando ocorreu um scn SQL> SELECT scn_to_timestamp(<numero_scn>) FROM

dual Para Saber o scn atual do banco SQL> SELECT current_scn, to_char(systimestamp, 'HH24:MM:SS DD-MM-YYYY') FROM v$database Para saber o scn da linha de uma tabela, quando sofreu alterao. SQL> SELECT ora_rowscn,<coluna1>,<coluna2> from <nome_tabela> >>>> Flashback Transaction Query <<<< Utilizado para desfazer mudanas, que ocorreu em um tempo no passado Privilgio Necessrio = select any transaction Para visualizar as mudanas de uma tabela no intervalo de um SCN SQL> select versions_startscn, versions_starttime, versions_endscn, versions_endtime, versions_operation,<coluna1>,<coluna2>,<colunaN> from <nome_tabela> versions between scn <scn_inicial> and <scn_final> Para gerar a instruo DML, que ir desfazer o contedo modificado, identificado pelo SCN. SQL> select start_scn, commit_scn, operation, logon_user,undo_sql from flashback_transaction_query where start_scn > <scn_inicial> and commit_scn < <scn_final> and logon_user='<usuario>'

>>>> Flashback query <<<< Utilizado para obter dados, em um tempo no passado, at mesmo os deletados. Privilgio necessrio = Flashback Any Table Obtendo atravs do data/horrio SQL> select * from <nome_tabela> as of timestamp to_timestamp('2011-07-28 10:55:00','YYYY-MM-DD HH:MI:SS') Obtendo atravs do SCN SQL> select * from <nome_tabela> as of timestamp scn_to_timestamp(ora_rowscn) ->Operao sendo obtidas atravs de ativao da DBMS Privilegio necessrio = grant execute on dbms_flashback SQL> execute DBMS_FLASHBACK.ENABLE_AT_TIME( to_timestamp('2011-07-28 10:55:00','YYYY-MM-DD HH:MI:SS'))

SQL> --executar a consulta SQL> execute DBMS_FLASHBACK.disable

>>>> Flashback Table <<<< Volta todas as mudanas feitas na tabela, em um ponto do tempo. SQL> ALTER TABLE <nome_tabela> ENABLE ROW MOVEMENT; SQL> FLASHBACK TABLE <nome_tabela> TO TIMESTAMP TO_TIMESTAMP('2011-07-28 14:20', 'YYYY-MM-DD HH24:MI');

>>>> Flashback Drop <<<< Recupera um tabela que foi apagada Consultar na lixeira do Oracle ->recyclebin = visualiza do usuario corrente ->dba_recyclebin = visualiza de todo o banco SQL> select owner,object_name,original_name,operation,type,droptime from dba_recyclebin SQL> flashback table <object_name> to before drop /*opcional rename to <novo_nome> */

Você também pode gostar