Comment trouver la date de la dernière modification d'une table ?
Comment trouver la date de la dernière modification d'une table ?
J'ai trouvé la table ALL_TAB_MODIFICATIONS, qui avait l'air de correspondre à ça, mais la table que je cherche n'y figure pas.
Et pourtant, la table en question est modifiée chaque jour (plus d'une fois).
J'ai trié ALL_TAB_MODIFICATIONS par date, et je vais de 2010 à hier. Donc ma table ne peut pas ne pas y figurer.
J'ai raté quelques chose ?
Sinon, existe t'il une autre table pour ce que je cherche ?
dbms_stats.flush_database_monitoring_info
Bonjour,
Citation:
Envoyé par
Lung
Et pourtant, la table en question est modifiée chaque jour (plus d'une fois).
J'ai trié ALL_TAB_MODIFICATIONS par date, et je vais de 2010 à hier. Donc ma table ne peut pas ne pas y figurer.
ALL_TAB_MODIFICATIONS n'est rafraîchie que toutes les 15 minutes (depends de la version d'Oracle). Normal, les infor sont gardées en mémoire et ne vont pas être écrites à chaque exécution.
Il est possible de forcer le rafraîchissement avec: dbms_stats.flush_database_monitoring_info
Exemple:
Code:
1 2 3 4 5 6 7 8 9 10
| > create table TEST as select * from dual
table TEST created.
> insert into TEST select * from dual connect by level <= 1000
1,000 rows inserted.
> exec dbms_stats.flush_database_monitoring_info
anonymous block completed
> select * from all_tab_modifications where table_name='TEST'
TABLE_OWNER TABLE_NAME PARTITION_NAME SUBPARTITION_NAME INSERTS UPDATES DELETES TIMESTAMP TRUNCATED DROP_SEGMENTS
-------------------------------------------------------------------------------------------------------------------------------- -------------------------------------------------------------------------------------------------------------------------------- -------------------------------------------------------------------------------------------------------------------------------- -------------------------------------------------------------------------------------------------------------------------------- ---------- ---------- ---------- -------------------- --------- -------------
FRANCK TEST 1000 0 0 29-JUL-13 13:47:14 NO 0 |
Par contre, c'est remis à zéro à chaque calcul de stats. Donc ne rien trouver dans ALL_TAB_MODIFICATIONS peut vouloir dire qu'il n'y a pas eu de de modif depuis le dernier calcul de stats.
Cordialement,
Franck.