随笔 - 37  文章 - 29  trackbacks - 0


常用链接

留言簿(3)

随笔分类

随笔档案

最新评论

阅读排行榜

评论排行榜

物化视图(实体化视图)是包括一个查询结果的数据库对象,它是远程数据的的本地副本,或者用来生成基于数据表求和的汇总表。物化视图存储基于远程表的数据,也可以称为快照。
所以物化视图和视图的最大区别是,物化视图在本地保存数据,而视图只是一些SQL语句而已。视图的好处是简化使用过程,物化视图的好处提高性能,当然也可以简化使用过程。提高查询速度的代价就是放弃一定的数据实时性。
物化视图可以查询表,视图和其它的物化视图。

创建物化视图,应先在对于的基础表上创建存储的日志空间:
create materialized view log on tablex
tablespace mytestspace           -- 日志空间
with rowid;

然后再创建物化视图:
create materialized vew myfirstmv
on prebuild tabley                   -- 将物化视图建立在一个已经存在的表上,也可不加这句
tablespace mytestspace
build deffered                         -- buld clause子句,deffered表示创建时不生成数据,默认为build immediate
refresh fast                             -- refresh 子句。fast表示只刷新上次刷新之后所作的修改。相对为complete。默认为force
           on commit                   -- 对基表的DML操作提交的同时进行刷新。默认为on demand
           start with to_date('2008-08-08 20:00:00', 'yyyy-mm-dd hh24:mi:ss')             --第一次刷新时间
           next TRUNC(SYSDATE+1)+18/24          --刷新时间间隔。每两天刷新一次,时间为下午6点
as
        select x1, x2, x3 from tablex

          
删除时,删除物化视图和物化视图日志无顺序要求,不过先删除日志,会使删除物化视图的速度加快很多。
如果物化视图日志存在的话,物化视图在删除的时候,需要将物化视图日志中所有当前物化视图需要刷新的记录删除掉。这意味着一个DDL的语句中包含着DML的部分。

以上都没经过实际操作,以后有时间再说


http://xznsoft.javaeye.com/blog/124000

posted on 2008-08-09 15:53 EvanLiu 阅读(1851) 评论(0)  编辑  收藏 所属分类: DB

只有注册用户登录后才能发表评论。


网站导航: