25 août 2021

Oracle - date de dernière mise à jour des données d'une table

Pour connaître la date de dernière mise à jour des données d'une table (insert ,delete etc ) il est possible de se baser sur la pseudo-colonne ora_rowscn (system change number niveau ligne) :


SQL> SELECT SCN_TO_TIMESTAMP(MAX(ora_rowscn)) as TIMAJ from ZYTD12 ;

TIMAJ
---------------------------
25/08/21 09:42:45,000000000


Si la mise à jour est trop ancienne une erreur sera émise :

SELECT SCN_TO_TIMESTAMP(MAX(ora_rowscn)) from INDIVIDUS

       *
ERROR at line 1:
ORA-08181: specified number is not a valid system change number
ORA-06512: at "SYS.SCN_TO_TIMESTAMP", line 1

Merci Michel pour l'information

cf : https://stackoverflow.com/questions/265122/how-to-find-out-when-an-oracle-table-was-updated-the-last-time/6832649


Aucun commentaire:

Enregistrer un commentaire