Come convertire scn in un timestamp in Oracle

Oracle ha funzionalità integrate con cui è possibile convertire scn in timestamp e timestamp in scn. SCN_TO_TIMESTAMP prende come argomento un numero che valuta un numero di modifica del sistema (SCN) e restituisce il timestamp approssimativo associato a tale SCN. Questa funzione è utile ogni volta che si desidera conoscere il timestamp associato a un SCN. Per fare ciò, Oracle ha fornito due pacchetti chiamati SCN_TO_TIMESTAMP e TIMESTAMP_TO_SCN.
converti-scn-in-timestamp
  • SCN è molto importante soprattutto quando si sta facendo il recupero RMAN.
  • Archivelog gap risoluzione e recupero del server di standby fisico.
  • Può essere utilizzato in un file di parametri di esportazione data pump utilizzando FLASHBACK_SCN per garantire una copia coerente del database in quel momento.

COME CONVERTIRE SCN IN TIMESTAMP E TIMESTAMP IN SCN

Controlla lo scn corrente del database usando la query sottostante.

SQL>select current_scn from v$database;
current_scn
--------------
4426538972

Per ottenere il valore timestamp dal numero scn corrente.

SQL> select scn_to_timestamp(4426538972) as timestamp from dual;
timestamp
-------------------------------
23-SEP-18 03.22.42.000000000 PM

Per ottenere il numero scn dal timestamp.

SQL> select timestamp_to_scn(to_timestamp('23/09/2018 15:22:44','DD/MM/YYYY HH24:MI:SS')) as scn from dual;
SCN
----------
4426538972

Leave a Reply

Il tuo indirizzo email non sarà pubblicato.