Heim  >  Artikel  >  Datenbank  >  Oracle【定期刷新】的【基于连接】的物化视图

Oracle【定期刷新】的【基于连接】的物化视图

WBOY
WBOYOriginal
2016-06-07 17:33:281322Durchsuche

今天项目中需要创建一个多表连接的物化视图,并且两分钟刷新一次。 Oracle的ORA-02063错误解决方法 http://www.linuxidc.com/Li

今天项目中需要创建一个多表连接的物化视图,并且两分钟刷新一次。

Oracle的ORA-02063错误解决方法 

如下图所示:

Oracle【定期刷新】的【基于连接】的物化视图

 

我的refresh字句选择的刷新方式是force,这种刷新方式会先尝试用fast方式(增量刷新)刷新,不行再用complete方式(完全刷新)刷新。

但是fast方式刷新需要在基表上建立日志(这样fast-刷新方式才能有增量的依据),而我的目标表是在远端机器上(上图我已经把DBlink连接远端表的部分换成了本地的Test1和Test2表)并且不是我们的系统,不让在上面创建日志,所以我这里的force其实实际上会以complete的方式刷新了。。。

另外的的refresh字句的采用WITH PRIMARY KEY选项生成主键物化视图,也就是说物化视图是基于主表的主键,而不是ROWID(对应于ROWID子句).

 

下面是创建物化视图的refresh字句的语法:

 

[refresh [fast|complete|force]

[on demand | commit]

[start with date] [next date]

[with {primary key|rowid}]]

===========================================================

我自己又写了一个基于连接的fast的刷新方式的物化视图,,但是有错误:

Oracle【定期刷新】的【基于连接】的物化视图

看样子refresh刷新方式只能基于单表的查询,而不能基于多表的连接查询了。

相关阅读:

Oracle物化视图创建报ORA-00942错误解决

Oracle 存储过程刷新物化视图

Oracle物化视图的使用

物化视图实现 Oracle 数据库表双向同步

Oracle物化视图应用笔记

linux

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn