Chinaunix首页 | 论坛 | 博客
  • 博客访问: 285671
  • 博文数量: 70
  • 博客积分: 10
  • 博客等级: 民兵
  • 技术积分: 531
  • 用 户 组: 普通用户
  • 注册时间: 2012-02-12 20:22
个人简介

1.01^365=37.8 0.99^365=0.03

文章分类

全部博文(70)

文章存档

2017年(9)

2016年(4)

2015年(14)

2014年(43)

我的朋友

分类: Oracle

2014-06-25 09:58:16

  1. --查看刷新组信息。  
  2. SQL> select rowner,rname,job,next_date,interval from dba_refresh;  
  3.   
  4. ROWNER               RNAME                 JOB NEXT_DATE            INTERVAL  
  5. -------------------- -------------------- ---- -------------------- --------------------  
  6. MVADMIN              REP_REFRESH             3 17-1月 -12           SYSDATE + 1/24  


  1. --查看刷新组子信息,包含具体的物化视图,以下 TEST_REP 就是我们创建的MV 。  
  2. SQL> select owner,name,rowner,rname,job from dba_refresh_children;  
  3.   
  4. OWNER                NAME                 ROWNER               RNAME                 JOB  
  5. -------------------- -------------------- -------------------- -------------------- ----  
  6. TEST                 TEST_REP             MVADMIN              REP_REFRESH             3 

  1. --根据job号,可以查看该job的详细内容。以下可知,oracle调用dbms_refresh.refresh对整个刷新  
  2. --组(REP_REFRESH)进行刷新。  
  3. SQL> col priv_user for a20  
  4. SQL> col schema_user for a20  
  5. SQL> col interval for a20  
  6. SQL> col what for a20  
  7. SQL> select job,priv_user,schema_user,interval,what from dba_jobs where job=3;  
  8.   
  9.  JOB PRIV_USER            SCHEMA_USER          INTERVAL             WHAT  
  10. ---- -------------------- -------------------- -------------------- --------------------  
  11.    3 MVADMIN              MVADMIN              SYSDATE + 1/24       dbms_refresh.refresh  
  12.                                                                     ('"MVADMIN"."REP_REF  
  13.                                                                     RESH"');  


与刷新组相关的操作:
  1. --新建一个刷新组  
  2. begin   
  3. DBMS_REFRESH.MAKE (   
  4.     name => 'mvadmin.rep_refresh',   
  5.     list => '',   
  6.     next_date => SYSDATE,   
  7.     interval => 'SYSDATE + 1/24',   
  8.     implicit_destroy => FALSE,   
  9.     rollback_seg => '',   
  10.     push_deferred_rpc => TRUE,   
  11.     refresh_after_errors => FALSE);   
  12. end;  
  13. /   
  14.   
  15. --添加MV到一个刷新组  
  16. begin   
  17. DBMS_REFRESH.ADD(  
  18.     name => 'rep_refresh',  
  19.     list => 'test.testmv'  
  20.     );  
  21. end;  
  22. /  
  23.   
  24. --更改刷新组的刷新间隔  
  25. begin   
  26. DBMS_REFRESH.CHANGE(  
  27.     name => 'rep_refresh',  
  28.     next_date => sysdate,  
  29.     interval => sysdate+(1/(24*60))  
  30.     );  
  31. end;  
  32. /  
  33.                                                                       
  34. --手动刷新一个刷新组  
  35. SQL> exec DBMS_REFRESH.REFRESH('rep_refresh');                                                                     
  36.                                                                       
  37. --从刷新组中移除一个物化视图  
  38. begin  
  39. DBMS_REFRESH.SUBTRACT (  
  40.    name => 'mvadmin.rep_refresh',  
  41.    list => 'test.testmv'  
  42.    );  
  43. end;  
  44. /                                                                     
  45.   
  46. --移除所有的物化视图并删除刷新组  
  47. exec DBMS_REFRESH.DESTROY('rep_refresh');    


阅读(1929) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~