【问题标题】:Oracle d/b Create Index errorOracle d/b 创建索引错误
【发布时间】:2011-07-30 13:10:34
【问题描述】:

在 sql developer 中运行时,我在下面的 sql 上缺少表达式(尽管我相信它与 oracle 客户端无关)尽管一切似乎都很好。

  CREATE UNIQUE INDEX "CRIS2"."SYS_IL0000296692C00014$$" ON "CRIS2"."AOITARGETPOINT" (
  PCTFREE 10 INITRANS 2 MAXTRANS 255 
  STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT)
  TABLESPACE "BIOSIRTDATA" 
  PARALLEL (DEGREE 0 INSTANCES 0) ;

--------------------------------------------------
Error starting at line 1 in command:
  CREATE UNIQUE INDEX "CRIS2"."SYS_IL0000296692C00014$$" ON "CRIS2"."AOITARGETPOINT" (
  PCTFREE 10 INITRANS 2 MAXTRANS 255 
  STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT)
  TABLESPACE "BIOSIRTDATA" 
  PARALLEL (DEGREE 0 INSTANCES 0) 
Error at Command Line:2 Column:2
Error report:
SQL Error: ORA-00936: missing expression
00936. 00000 -  "missing expression"
*Cause:    
*Action:

有什么帮助吗?

【问题讨论】:

    标签: sql oracle oracle10g oracle-sqldeveloper


    【解决方案1】:

    您在 CREATE INDEX 语句中缺少列列表

      CREATE UNIQUE INDEX "CRIS2"."SYS_IL0000296692C00014$$" ON "CRIS2"."AOITARGETPOINT" 
      (-->Field List<--)
      PCTFREE 10 INITRANS 2 MAXTRANS 255 
      STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
      PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT)
      TABLESPACE "BIOSIRTDATA" 
      PARALLEL (DEGREE 0 INSTANCES 0) ;
    

    【讨论】:

    • 嗨,迈克尔,感谢您的建议。现在可以了。抱歉回复晚了。
    【解决方案2】:

    正如 Michael Pakhantsov 所说,缺少的字段列表显然是最大的问题。但这种说法还有其他一些问题。

    您可能希望为索引指定一个真实名称,而不是使用系统生成的名称。这可能只是一个样式问题,但如果您创建以 SYS 开头的对象,它可能会令人困惑。 (或者是否有可能另一个对象名称与此冲突?我不确定 Oracle 是如何提出它的名称的。)

    PARALLEL (DEGREE 0 INSTANCES 0); 是 Oracle 7 中的并行子句语法。documentation 警告“parallel_clause 的语法取代了出现在早期版本的 Oracle 中的语法。仍支持被取代的语法以实现向后兼容性,但可能会导致行为略有不同从那记录下来。”在我的测试中,我没有发现这种语法有任何问题,但如果可能的话,你还是应该避免它。

    【讨论】:

    • 非常感谢 Jonearles 的建议
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-22
    相关资源
    最近更新 更多