微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

oracle物化视图快速更新

建立测试表

createtableT_tablenologgingasselect*fromdba_objects;
createtablet_table_1nologgingasselect*fromdba_tables;

--建立日志记录

creatematerializedviewlogonT_tablewithrowid,sequence(object_name,object_type,owner)includingnewvalues;
creatematerializedviewlogont_table_1withrowid,sequence(table_name)includingnewvalues;

--建立物化视图

creatematerializedviewmv_t_tablenologging
refreshfastondemand
withrowid
STARTWITHTO_DATE('21-08-201710:09:08','DD-MM-YYYYHH24:MI:SS')NEXTSYSDATE+1/(24*60)
asselectcount(*),a.object_type,a.ownerfromT_tablea,t_table_1bwherea.object_name=b.table_name
groupbya.object_type,a.owner


--测试

select*frommv_t_tablewhereowner='SYstem';
deletefromt_tablewhereowner='SYstem';
insertintot_tableselect*fromdba_objectswhereowner='SYstem';


--查看日志生成

selecta.name,b.valuefromv$statnamea,v$mystatbwherea.statistic#=b.statistic#anda.name='redosize';


--查看刷新日志

SELECTowner,mview_name,last_refresh_scn,last_refresh_date,query,REVISIONFROMdba_mview_analysisWHEREowner='UTF32';

--查看日志记录表,MLOG$为日志记录表,一旦更新完成,此表的内容会被清掉;

select*fromMLOG$_T_TABLE
select*fromMLOG$_T_TABLE_1;

官方说明参见:http://docs.oracle.com/cd/E11882_01/server.112/e10706/repmview.htm#REPLN265

原文地址:https://www.jb51.cc/oracle/208007.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐