Comment convertir scn en horodatage dans Oracle
Oracle dispose de fonctionnalités intégrées permettant de convertir scn en horodatage et timestamp en scn. SCN_TO_TIMESTAMP prend comme argument un nombre qui évalue un numéro de changement de système (SCN) et renvoie l’horodatage approximatif associé à ce SCN. Cette fonction est utile chaque fois que vous souhaitez connaître l’horodatage associé à un SCN. Pour ce faire, Oracle a fourni deux paquets appelés SCN_TO_TIMESTAMP et TIMESTAMP_TO_SCN.
- SCN est très important en particulier lorsque vous effectuez une récupération RMAN.
- Résolution des lacunes de l’Archivelog et récupération du serveur de secours physique.
- Il peut être utilisé dans un fichier de paramètres d’exportation de pompe de données à l’aide de FLASHBACK_SCN pour assurer une copie cohérente de la base de données à ce moment-là.
COMMENT CONVERTIR LE SCN EN HORODATAGE ET L’HORODATAGE EN SCN
Vérifiez le scn actuel de la base de données à l’aide de la requête ci-dessous.
SQL>select current_scn from v$database;
current_scn
--------------
4426538972
Pour obtenir la valeur d’horodatage à partir du numéro scn actuel.
SQL> select scn_to_timestamp(4426538972) as timestamp from dual;
timestamp
-------------------------------
23-SEP-18 03.22.42.000000000 PM
Pour obtenir le numéro scn de l’horodatage.
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