物化视图:
增量刷新需要创建基于基表的日志
create materialized view log on sh.sales with primary key including new values;
create materialized view log on sh.sales with rowid including new values;
create materialized view sh.sales_mv using index refresh force on demand as select * from sh.sales;
基表发生变化,物化视图同步方式:
on commit:随着基表事务提交而刷新物化视图
on demand:手动完全刷新,可以通过exec dbms_mview.refresh('sh.prod_mv','C')
刷新方式:
complete:完全刷新,oracle会删除现在表中的所有记录,根据查询定义生成物化视图数据。
fast:快速刷新,会将自上次刷新以后的数据刷新到物化视图。快速刷新必须创建基于主表的日志
force:Oracle会自动判断刷新方式。
drop materilized view log on sh.sales;
drop materilized view sh.prod_mv;