0

我正在阅读一些文章,甚至是堆栈上的一些答案,但我仍然有一些问题。我将发布我的 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更新。有人可以帮忙吗?

谢谢!

4

2 回答 2

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>
于 2011-12-16T13:18:00.110 回答
1

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

于 2011-12-16T16:00:57.337 回答