首页 > 数据库 > Oracle > 实体化视图的创建和修改
一、权限
grant create materialized view to user_name;
grant query rewrite to user_name;---查询重写权限
如果用户没有建表权限
grant create any table to user_name;
二、创建实体化视图日志
create materialized view log on table_name;
三、创建实体化视图
create materialized view mview_name
build immediate -------------说明1
refresh fast on commit--------说明2
enable query rewrite----------说明3
as
select * from ^^^^^^;
1.说明1:
默认选项就是build immediate,意思是立刻建立实体化视图
另一种方法是build deferred,此选项将在以后的某个时刻装在实体化视图及其数据
2.说明2:
refresh fast on commit
用fast的刷新类型来刷新。
除了fast还包括一下几个刷新类型:
COMPLETE:完全刷新,速度较慢,将重新计算基于实体化视图的查询。
FAST:快速刷新,速度较快,将实体化视图日志中记载的内容刷新到实体化视图中。
FORCE:先做fast刷新,如果fast出问题了就做complete刷新
NEVER:从不刷新。
用on commit刷新方法来刷新。
on commit:当主表的变化数据被提交的时候,实体化视图自动刷新
on demand:必须由DBMS_MVIEW.REFRESH这样的过程来实现实体化视图的刷新,此为默认刷新方法。
3.说明3:
ENABLE QUERY REWRITE是查询重写选项。
四、删除实体化视图
DROP MATERIALIZED VIEW MVIEW_NAME;
五、实体化视图的其他特性
1.我们可以实体化视图上建立索引
2.我们可以在分区表上创建实体化视图
3.可以对实体化视图进行分区
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/41451/viewspace-1022892/ ,如需转载,请注明出处,否则将追究法律责任。