Oracle - 创建物化视图

时间:2011-12-16 12:51:54

标签: oracle materialized-views

我正在阅读一些文章,甚至是堆栈上的一些答案,但我仍然有一些问题。我将发布我的MV代码以进行可能的分析:

CREATE MATERIALIZED VIEW some_materialized_view
REFRESH COMPLETE
START WITH sysdate
NEXT '2011-12-01' + 31
WIDTH PRIMARY KEY
AS my_query

错误是:

00984. 00000 -  "column not allowed here"

我在伪造什么?我唯一想要的是每个月我的MV更新开始。有人可以帮忙吗?

谢谢!

2 个答案:

答案 0 :(得分:1)

您的命令中存在两个语法错误。

条款WIDTH PRIMARY KEY应为WITH PRIMARY KEY(您在WITH上输了错误

NEXT子句正在使用需要date关键字的日期文字:

NEXT DATE '2011-12-01' + 31

所以完整的命令应该是:

CREATE MATERIALIZED VIEW some_materialized_view
REFRESH
  COMPLETE
  START WITH SYSDATE
  NEXT DATE '2011-12-01' + 31
  WITH PRIMARY KEY
AS <your query here>

答案 1 :(得分:1)

您应该首先咨询Oracle documentation,尤其是语法问题。你要问的一切+更多就在那里。一旦你习惯了语言参考文档,它们就非常有用,你可能会学到一些关于你正在研究的新东西。