Oracle Text 中文分詞器 CHINESE_LEXER 內建詞典為加密二進制,需用 ctxlc 工具導出文本、編輯後再導入覆蓋,方可新增業務專有詞彙。
C:\Users\<用戶>> ctxlc -zht -ocs zhs16GBK > zhs16gbk_102.txt
用記事本打開 zhs16gbk_102.txt,每行一個詞,追加業務關鍵詞(如「雙十一」、「雲計算」等)。
C:\Users\<用戶>> ctxlc -zht -ics zhs16gbk -n -i zhs16gbk_102.txt
生成四個文件:drold.dat、droli.dat、drolk.dat、drolt.dat。
備份:%ORACLE_HOME%\ctx\data\zhlx\*.dat
複製:將上述四個 .dat 文件覆蓋到 %ORACLE_HOME%\ctx\data\zhlx\
DROP INDEX idx_fulltext;
CREATE INDEX idx_fulltext ON docs(content) INDEXTYPE IS CTXSYS.CONTEXT
PARAMETERS ('LEXER chinese_lexer');
ZHS16GBK),UTF8 環境請用 AL32UTF8 參數。參考來源:CSDN 博客整理