物化视图LOG的内容变化实验

实验一:
MATERIALIZED VIEW LOG表"MLOG$_基表"内容被删除
当基于该基表的所有物化视图(一个或多个)都在基表发生DML后做完刷新后,"MLOG$_基表"的内容会被清楚:
1、 创建一个测试用的表T
create table t ( a int , b varchar2 ( 50 ) , constraint pk_t primary key ( a )) ;

2、 创建对应的MV名为MVT
create materialized view mvt as select * from t ;

3、 往表里面插入一些个数据
insert into t select rownum , object_name from all_objects ;
commit ;

4、 下面对mview做一次刷新看看
exec dbms_mview . refresh ( ' mvt ' ) ;

5、 现在能看到mv里面已经有数据了
select count ( * ) from mvt ;

6、 现在表T上面创建MView Log
create materialized view log on t ;

7、 对表T数据进行一些修改
update t set b='test1' where a=1093;

8、查看日志表内容:


9、 接下来就是进行快速刷新了
exec dbms_mview . refresh ( ' mvt ' , ' F ' ) ;
做刷新时报错ORA-12034: "SCOTT"."T" 上的实体化视图日志比上次刷新后的内容新
将物化视图DROP后重建即可

10、再次查询MLOG$_T
select * from mlog$_t;
发现结果集为空。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/26521853/viewspace-1277245/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/26521853/viewspace-1277245/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值