建立Oracle中文全文索引步驟舉例

來源:互聯網
上載者:User
資料庫首先要有CTXSYS使用者和CTXAPP角色
資料庫使用者賦予CTXAPP角色
確保Oracle伺服器上lsnrctl中PLSExtProc服務為啟動狀態

create table tbl_1 (id int primary key,title varchar2(2000),cont blob);
插入N條記錄
begin
ctx_ddl.create_preference ('my_lexer', 'chinese_vgram_lexer');
end;
CREATE INDEX qidx_tbl_1_1 ON tbl_1 ( title ) INDEXTYPE IS ctxsys.CONTEXT parameters('lexer my_lexer')
CREATE INDEX qidx_tbl_1_2 ON tbl_1 ( cont ) INDEXTYPE IS ctxsys.CONTEXT parameters('lexer my_lexer')

檢索
select * from tbl_1 where contains(title,'尋找內容')>0;
select * from tbl_1 where contains(cont,'尋找內容')>0;

同步
exec   ctx_ddl.sync_index('qidx_tbl_1_1');
exec   ctx_ddl.sync_index('qidx_tbl_1_2');

缺陷

兩個全文索引最好不要使用or關聯,否則效率很低
尋找內容只能是與詞法分析器所人為的單詞進行匹配
比如尋找 title可以,但卻查不了t。
想想也是,否則效率豈不是太低了。呵呵

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.