【问题标题】:Error ORA-02000 - QUERY keyword missing on MATERIALIZED VIEW错误 ORA-02000 - MATERIALIZED VIEW 上缺少 QUERY 关键字
【发布时间】:2018-02-02 16:52:53
【问题描述】:

这是我的问题

  CREATE MATERIALIZED VIEW STRUTT_AFAM_RD (CD_ENTE, CD_STRUTTURA)
  TABLESPACE FLUSSI_SIA01D
  BUILD IMMEDIATE
  USING INDEX 
  REFRESH COMPLETE ON DEMAND NEXT TO_DATE(TO_CHAR(SYSDATE + 1, 'DD-MON-
  YYYY') || ' ' || '05:00:00','DD-MON-YYYY HH24:MI:SS')
  WITH ROWID USING DEFAULT LOCAL ROLLBACK SEGMENT
  USING ENFORCED CONSTRAINTS DISABLE ON QUERY COMPUTATION DISABLE QUERY 
  REWRITE
  AS (SELECT SUBSTR(S.CD_STRUTTURA_CUDES,1,3) CD_ENTE,
           S.CD_STRUTTURA_CUDES  CD_STRUTTURA
      FROM PONTE_EVESAN.STRUTTURE_FAM_AN@SEBP_PONTE_EVESAN S
     WHERE S.DT_FINE_VALIDITA IS NULL
       AND S.FL_ANNULLA = 0);

  CREATE UNIQUE INDEX I_SNAP$_SIAD_STRUTT_AFAM_RD ON STRUTT_AFAM_RD 
  (M_ROW$$) 
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS NOLOGGING 
  STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1
  BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
  TABLESPACE FLUSSI_SIAD01D ;

  COMMENT ON MATERIALIZED VIEW STRUTT_AFAM_RD  IS 'STRUTTURE AFAM';

错误:ORA-02000:parola chiave QUERY mancante(QUERY 关键字缺失) 02000. 00000 - “缺少 %s 关键字”

【问题讨论】:

    标签: sql oracle


    【解决方案1】:

    您使用哪个数据库版本? DISABLE 行应该做什么,尤其是 COMPUTATION (key?) 字?

    这是 11g CREATE MATERIALIZED VIEW 文档,请阅读并遵循语法。

    无论如何:看看这段代码,它实际上是有效的。注意区别(我用注释标记了它):

    CREATE MATERIALIZED VIEW STRUTT_AFAM_RD
       (
       CD_ENTE,
       CD_STRUTTURA
       )
       TABLESPACE FLUSSI_SIA01D
       BUILD IMMEDIATE
       USING INDEX
       REFRESH COMPLETE
               ON DEMAND
               NEXT TO_DATE (
                       TO_CHAR (SYSDATE + 1, 'DD-MON-YYYY') || ' ' || '05:00:00',
                       'DD-MON-YYYY HH24:MI:SS')
               WITH ROWID
               USING DEFAULT LOCAL ROLLBACK SEGMENT
               USING ENFORCED CONSTRAINTS
       -- DISABLE ON QUERY COMPUTATION DISABLE QUERY REWRITE  --> yours
       DISABLE QUERY REWRITE                                  --> mine
    AS
       (SELECT SUBSTR (S.CD_STRUTTURA_CUDES, 1, 3) CD_ENTE,
               S.CD_STRUTTURA_CUDES CD_STRUTTURA
          FROM PONTE_EVESAN.STRUTTURE_FAM_AN@SEBP_PONTE_EVESAN S
         WHERE S.DT_FINE_VALIDITA IS NULL AND S.FL_ANNULLA = 0);
    

    【讨论】:

      猜你喜欢
      • 2021-07-20
      • 2018-06-23
      • 1970-01-01
      • 2017-10-18
      • 2016-03-12
      • 1970-01-01
      • 2015-05-02
      • 2010-09-23
      • 2023-03-22
      相关资源
      最近更新 更多