oracle 如何手动刷新物化视图?

oracle 如何手动刷新物化视图?,第1张

1.建立物化视图

create materialview myview;

refresh force on demand;

as;

select c1,c2 from table where c1>50

2.手动刷新物化视图

在pl/sql命令窗口输入如下内容,并回车;

execute dbms_mview_refresh('myview','c')

物化视图建立的时候可以定义刷新方式,一般有: refresh fast 和 refresh complete之分,前者是只更新主表中变化的记录(主表必须建立materialized view log),而后者是把MV里面的数据全部更新。此外,更新方式还可以有:on demand, on commit, on force之分. on commit是及时更新。其实用户创建materialized view的时候可以指定更新频率,给你个例子

CREATE Materialized View mv_terminal

REFRESH FAST

NEXT SYSDATE + 30/(24*60)

AS

SELECT * FROM ........

这个MV每30分钟刷新一次,只刷新改变的数据

使用物化视图就可以了,比如:

create materialized view mv_test

refresh complete

start with to_date('02-08-2010 18:00:00', 'dd-mm-yyyy hh24:mi:ss') --第一次刷新时间

next sysdate+1/24 --间隔多久刷新一次

as --子查询语句,同普通view一样

select emp.empno,emp.ename,emp.job,emp.hiredate,emp.comm,dept.loc

from emp,dept

where emp.deptno=dept.deptno


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/bake/11602292.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存