ORA-12054在创建物化视图时

时间:2016-07-19 09:59:13

标签: sql oracle materialized-views

现在我正在使用Materialized视图,我尝试创建测试物化视图:

ON COMMIT

但是我收到了错误:

  

ORA-12054:无法为其设置ON COMMIT刷新属性   物化观点。

也许我应该更改ON_DEMAND上的AppDelegate *appDelegate = [UIApplication sharedApplication].delegate; appDelegate.window.backgroundColor = [UIColor redColor];

1 个答案:

答案 0 :(得分:1)

由于您在查询中使用current_date函数,因此无法发布工作。将其更改为ON DEMAND。它会起作用。

还为表创建主键。

两个刷新执行模式为ON COMMIT和ON DEMAND。根据您创建的物化视图,某些选项可能不可用。

ON COMMIT

当修改其中一个物化视图的详细信息表的事务提交时,将自动进行刷新。只要物化视图可快速刷新(换句话说,不复杂),就可以指定此项。使用此模式需要ON COMMIT权限。

ON DEMAND

当用户手动执行DBMS_MVIEW包中包含的可用刷新过程之一(REFRESH,REFRESH_ALL_MVIEWS,REFRESH_DEPENDENT)时,会发生刷新。

Working for me: -


CREATE MATERIALIZED VIEW test_mat_view1
BUILD IMMEDIATE
REFRESH COMPLETE
ON COMMIT
as
  select col1,col2 from test_mview
 -- where current_date > date_col
  ;