当前位置:Gxlcms > mysql > Oracle【定期刷新】的【基于连接】的物化视图

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

时间:2021-07-01 10:21:17 帮助过:25人阅读

今天项目中需要创建一个多表连接的物化视图,并且两分钟刷新一次。 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

人气教程排行