首页 > 代码库 > oracle 全文检索

oracle 全文检索

一、使用 sys 用户登录oracle

(1)运行—cmd—sqlplus — sys/密码 @连接字符 as sysdba

二、授权

1、grant ctxapp to 全文检索使用用户;

2、grant execute on ctx_dll to 全文检索使用用户;

3、全文检索使用用户 登录oracle 可以通过 pl/sql 界面登录;以下操作都是在pl/sql 界面操作。

三、创建分析器

BEGIN
  --设置词法分析器 名称:‘oratext_lexer‘,类型:‘chinese_vgram_lexer‘
ctx_ddl.create_preference (‘oratext_lexer‘, ‘chinese_vgram_lexer‘); 

END;

四、创建表索引

CREATE INDEX 索引名称 ON 表名(字段) indextype IS ctxsys.context parameters(‘lexer ORATEXT_LEXER‘); --分析器名称
commit;

以上就是索引建完了,可以测试有无错误:SELECT * FROM ctx_USER_index_errors

可以使用语句查询:select *  from 表 a  where contains(a.name, ‘产量‘) > 0  order by a.name;

五、索引优化(用于数据变动时:添加、删除、修改)

BEGIN

索引同步:
   ctx_ddl.sync_index(‘IDX_QueryDAtaCol‘);

索引优化:
  ctx_ddl.optimize_index(‘IDX_QueryDAtaCol‘, ‘full‘);

  END;

六、切词 把词组切分重组