【问题标题】:Oracle ctxsys.context DRG-10599 column is not indexedOracle ctxsys.context DRG-10599 列未编入索引
【发布时间】:2017-09-18 16:02:45
【问题描述】:

我在一列上有 ctxsys.context 索引。当我执行以下查询时,我给出DRG-10599: column is not indexed 错误。我检查索引并更新它。

查询:

SELECT s.dsa_id FROM service_search s
  WHERE CONTAINS(s.fld_search, 'someData') >0

索引ddl:

  CREATE INDEX "ARCHIVE_SER"."IDX_SEARCH_CTX" ON 
    "ARCHIVE_SER"."service_search" ('FLD_SEARCH') 
    INDEXTYPE IS "CTXSYS"."CONTEXT"  PARAMETERS ('SYNC ( ON COMMIT)')

【问题讨论】:

    标签: oracle indexing


    【解决方案1】:

    您的索引 DDL 中有错字,因此它不应该起作用。 ('FLD_SEARCH') 列在单引号中,这使其成为 VARCHAR 而不是标识符。如果您不使用这么多双引号,可能会更容易发现这样的错误。 :)

    这对我来说很好。

    create table service_search (fld_search varchar2(4000));
    
    CREATE INDEX IDX_SEARCH_CTX ON service_search (FLD_SEARCH) 
      INDEXTYPE IS CTXSYS.CONTEXT  PARAMETERS ('SYNC ( ON COMMIT)');
    
    select * from service_search s where contains(s.fld_search, 'someData') > 0;
    

    【讨论】:

      猜你喜欢
      • 2017-11-02
      • 2019-12-19
      • 1970-01-01
      • 1970-01-01
      • 2020-05-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多