Materialized Views - Identifying the last refresh

前端 未结 3 549
庸人自扰
庸人自扰 2021-01-31 10:08

I presently access a series of views and materialized views. The materialized are maintained by a third party who offers little information regarding the frequency and success

相关标签:
3条回答
  • 2021-01-31 10:32

    It looks like doc_180 already answered this in the comments, I'm not sure why it didn't get added as the answer

    SELECT owner, mview_name, last_refresh_date
      FROM all_mviews
     WHERE owner = <<user that owns the materialized view>>
       AND mview_name = <<name of the materialized view>>
    

    If you have access to the DBA tables, you could substitute DBA_MVIEWS for ALL_MVIEWS. That would allow you to get access to information about when every materialized view was refreshed rather than just the subset of materialized views that you have access to. Of course, that's probably not a difference that is particularly important in this case.

    0 讨论(0)
  • 2021-01-31 10:33

    Personally i use the all_snapshots, and this information is complementary to the information of the DBA_MVIEWS or ALL_MVIEWS

    select owner, name, last_refresh, error, status, refresh_mode  
    from  all_snapshots 
    where owner = 'owner';
    
    0 讨论(0)
  • 2021-01-31 10:47

    Unfortunately oracles default date format is YYYY-MM-DD. If you need the time just use something like this:

    SELECT owner, mview_name, to_char(LAST_REFRESH_DATE, 'yyyy-mm-dd hh24:mi:ss') last_refresh_date
    FROM all_mviews
    WHERE owner = 'FOO'
    AND mview_name = 'MV_BAR';
    
    0 讨论(0)
提交回复
热议问题