建立索引的时候报错,只要建的时候带参数parameters就报错
Create index test_zw_title on t_resource(title) indextype is ctxsys.ctxcat parameters ('index set zw_test')ERROR 位于第 1 行:
ORA-29855: 执行 ODCIINDEXCREATE 例行程序时出错
ORA-20000: Oracle Text 错误:
DRG-12306: 列 TITLE 对于索引集列太长
ORA-06512: 在"CTXSYS.DRUE", line 157
ORA-06512: 在"CTXSYS.CATINDEXMETHODS", line 100请问该问题如何解决

解决方案 »

  1.   

    给你两个例子参考下:
    第一种方法:
    一、创建示例表CREATE TABLE T_FULLTEXT_DEMO(ID NUMBER NOT NULL,TITLE VARCHAR2(100) NULL,REMARK VARCHAR2(200) NULL,FILE_NAME VARCHAR2(200) NULL,CONSTRAINT T_FULLTEXT_DEMO_PK PRIMARY KEY ( ID ));二、对TITLE和REMARK建立索引BEGINCTXSYS.CTX_DDL.CREATE_PREFERENCE('MYMDS','MULTI_COLUMN_DATASTORE');
    CTXSYS.CTX_DDL.SET_ATTRIBUTE('MYMDS', 'COLUMNS', 'TITLE, REMARK');
    END;CREATE INDEX T_FULLTEXT_DEMO_IDX ON T_FULLTEXT_DEMO(TITLE) INDEXTYPE IS CTXSYS.CONTEXT PARAMETERS('DATASTORE MYMDS');三、建立存储选项参数、语法分析器BEGIN
    --CTX_DDL.DROP_PREFERENCE('MY_LEXER');--CTX_DDL.DROP_PREFERENCE('MY_DATASTORE_PREFS');CTX_DDL.CREATE_PREFERENCE ('MY_LEXER', 'CHINESE_VGRAM_LEXER');
    CTX_DDL.CREATE_PREFERENCE ('MY_DATASTORE_PREFS', 'FILE_DATASTORE');
    CTX_DDL.SET_ATTRIBUTE ('MY_DATASTORE_PREFS', 'PATH', 'E:\Projects\My_Documents; E:\Projects\My_Documents\UML_DOC');
    END;四、对文档建立全文检索索引CREATE INDEX T_FULLTEXT_DEMO_FILE_IDX ON T_FULLTEXT_DEMO(FILE_NAME) INDEXTYPE IS CTXSYS.CONTEXT PARAMETERS('DATASTORE MY_DATASTORE_PREFS LEXER MY_LEXER');五、插入测试数据INSERT INTO T_FULLTEXT_DEMO(ID,TITLE,REMARK,FILE_NAME) VALUES(1,'德鲁克的《管理:任务、责任、实践》','管理类书籍','德鲁克的《管理:任务、责任、实践》.doc');INSERT INTO T_FULLTEXT_DEMO(ID,TITLE,REMARK,FILE_NAME) VALUES(2,'PB控件的属性事件和函数','PB技术书籍','PB控件的属性事件和函数.pdf');INSERT INTO T_FULLTEXT_DEMO(ID,TITLE,REMARK,FILE_NAME) VALUES(3,'微软产品报价','微软软件产品报价','微软产品报价.xls');INSERT INTO T_FULLTEXT_DEMO(ID,TITLE,REMARK,FILE_NAME) VALUES(4,'JavaScript 5.5','JavaScript语言帮助文档','JavaScript 5.5.CHM');INSERT INTO T_FULLTEXT_DEMO(ID,TITLE,REMARK,FILE_NAME) VALUES(5,'ASCII码','ASCII码的各种进制表示方式和代表的意思','ASCII码.htm');INSERT INTO T_FULLTEXT_DEMO(ID,TITLE,REMARK,FILE_NAME) VALUES(6,'UML数据库建模','UML数据库建模的相关知识','UML数据库建模.ppt');六、同步索引和优化索引若此时检索,应没有数据。select * from T_FULLTEXT_DEMO
    where contains(TITLE,'管理')>0;需要将索引同步BEGIN
    CTXSYS.CTX_DDL.SYNC_INDEX('T_FULLTEXT_DEMO_FILE_IDX');
    CTXSYS.CTX_DDL.SYNC_INDEX('T_FULLTEXT_DEMO_IDX');
    END;七、测试全文索引select * from T_FULLTEXT_DEMO
    where contains(TITLE,'管理')>0;select * from T_FULLTEXT_DEMO
    where contains(FILE_NAME,'德鲁克')>0;八、优化索引BEGINCTXSYS.CTX_DDL.OPTIMIZE_INDEX('T_FULLTEXT_DEMO_FILE_IDX','FULL');
    CTXSYS.CTX_DDL.OPTIMIZE_INDEX('T_FULLTEXT_DEMO_IDX','FULL');
    END;
      

  2.   

    第二种方法:
    一、创建示例表CREATE TABLE T_FULLTEXT_DEMO(ID NUMBER NOT NULL,TITLE VARCHAR2(100) NULL,REMARK VARCHAR2(200) NULL,FILE_NAME BFILE NULL,CONSTRAINT T_FULLTEXT_DEMO_PK PRIMARY KEY ( ID ));二、创建虚拟目录并授权(使用SYSTEM帐号)CREATE DIRECTORY LOCAL_DIR AS 'E:\Projects\My_Documents';GRANT READ ON DIRECTORY LOCAL_DIR TO JK_DANGAN;三、插入示例数据INSERT INTO T_FULLTEXT_DEMOVALUES (1, '微软产品报价', '微软产品报价',BFILENAME('LOCAL_DIR','微软产品报价.xls'));INSERT INTO T_FULLTEXT_DEMOVALUES (2, '电子商务的瓶颈之我见', '电子商务的瓶颈之我见',BFILENAME(''LOCAL_DIR','电子商务的瓶颈之我见.doc'));四、创建索引CREATE INDEX T_FULLTEXT_DEMO_FILE_IDX ON T_FULLTEXT_DEMO(FILE_NAME) INDEXTYPE IS CTXSYS.CONTEXT;五、测试select * from T_FULLTEXT_DEMO
    where contains(file_name,'数据库')>0
      

  3.   

    列 TITLE 对于索引集列太长 ----这句话你重点看看