Oracle
 sql >> Database >  >> RDS >> Oracle

Come utilizzare Timestamp_to_scn e Scn_to_timestamp in Oracle?

Stai cercando di guardare troppo indietro. Puoi convertire solo da e verso SCN che si trovano nella finestra di ripristino/flashback gestita dal tuo sistema. Una volta scadute le modifiche, la mappatura viene persa.

Questo è spiegato nella documentazione:

L'associazione tra un SCN e un timestamp quando viene generato l'SCN viene ricordata dal database per un periodo di tempo limitato. Questo periodo è il massimo del periodo di conservazione dell'annullamento dell'ottimizzazione automatica, se il database viene eseguito nella modalità di gestione degli annullamenti automatici, e i tempi di conservazione di tutti gli archivi di flashback nel database, ma non inferiore a 120 ore. Il tempo per l'obsolescenza dell'associazione trascorre solo quando il database è aperto. Viene restituito un errore se l'SCN specificato per l'argomento in SCN_TO_TIMESTAMP è troppo vecchio.

Tieni presente che fanno parte del meccanismo interno di Oracle e quindi sono di utilità limitata per noi; anche se ovviamente sono utili per le query di flashback, sempre all'interno della stessa finestra.