物化视图创建定时刷新:
create materialized view OM_DUTY refresh fast on demand next SYSDATE + 1 / 24 / 60 as select DUTY_ID_, PARENT_DUTY_ID_, DUTY_CODE_, DUTY_NAME_, ORG_LEADER_LEVEL_, ORDER_, STATUS_, CREATION_DATE_, UPDATE_DATE_, OPERATOR_NAME_ from OM_DUTY@OM;
手动刷新语句:
BEGIN DBMS_MVIEW.REFRESH ( list => 'OM_DUTY', Method =>'COMPLETE', refresh_after_errors => True); end;
说明:
OM_DUTY 为物化视图的名称;
Method =>'C',物化视图有三种刷新方式:COMPLETE、FAST和FORCE;
遇到的问题:在执行手动刷新时,报了一个Oracle错误,原因是我的数据库,其中的一个表与物化视图建立外键关系,导致了不手动刷新(更新物化视图时,违反了数据的完整性),所以建立物化后,不要与之建立主外键的关系;