说明:物化视图刷新方式有三种:全量刷新、增量刷新和强制刷新,三种刷新方式具体如下:
全量刷新(complete):不管使用哪种刷新方式,物化视图的首次刷新都使用全量刷新的方式。全量刷新机制是首先物化视图对应表中的数据采用delete全部删除,然后再从原表中使用insert把数据重新插入。
增量刷新(fast):增量刷新是基于主表上的物化视图日志(MLOG$_tablename)进行刷新的,主表上每插入或删除一条数据,对应物化视图日志中同样会插入一条数据(主表更新一条数据,对应物化视图中会插入两条记录数据),
物化视图刷新后主表上物化视图日志记录信息会被清空,重新开始记录后面的更新。
强制刷新(force):当物化视图满足增量刷新的条件时使用增量刷新,否则使用全量刷新。
增量刷新测试:
1、数据库eisoo上使用u01用户创建主表
create table t1(id int,name varchar2(20));
alter table t1 add constraints pk_t1 primary key(id);
create sequence t1_seq increment by 1 start with 1 minvalue 1 maxvalue 9999999999999 nocache order;
create or replace procedure insert_to_t1 as
begin
insert into t1 values (t1_seq.Nextval,'a
全量刷新(complete):不管使用哪种刷新方式,物化视图的首次刷新都使用全量刷新的方式。全量刷新机制是首先物化视图对应表中的数据采用delete全部删除,然后再从原表中使用insert把数据重新插入。
增量刷新(fast):增量刷新是基于主表上的物化视图日志(MLOG$_tablename)进行刷新的,主表上每插入或删除一条数据,对应物化视图日志中同样会插入一条数据(主表更新一条数据,对应物化视图中会插入两条记录数据),
物化视图刷新后主表上物化视图日志记录信息会被清空,重新开始记录后面的更新。
强制刷新(force):当物化视图满足增量刷新的条件时使用增量刷新,否则使用全量刷新。
增量刷新测试:
1、数据库eisoo上使用u01用户创建主表
create table t1(id int,name varchar2(20));
alter table t1 add constraints pk_t1 primary key(id);
create sequence t1_seq increment by 1 start with 1 minvalue 1 maxvalue 9999999999999 nocache order;
create or replace procedure insert_to_t1 as
begin
insert into t1 values (t1_seq.Nextval,'a