IT貓撲網(wǎng):您身邊最放心的安全下載站! 最新更新|軟件分類|軟件專題|手機(jī)版|論壇轉(zhuǎn)貼|軟件發(fā)布

您當(dāng)前所在位置: 首頁數(shù)據(jù)庫Oracle → 創(chuàng)建并使用oracle全文搜索

創(chuàng)建并使用oracle全文搜索

時間:2015-06-28 00:00:00 來源:IT貓撲網(wǎng) 作者:網(wǎng)管聯(lián)盟 我要評論(0)

  說明:使用全文索引需要使用詞法分析器,什么叫詞法分析器呢,如:你想搜索"中國人",那么數(shù)據(jù)庫的底層就會給你以"中國"、"國人"等等進(jìn)行解析去搜索,大概就是這樣,oracle有幾個可供選擇的分析器,默認(rèn)創(chuàng)建全文搜索時會默認(rèn)有一個分析器,不過對中文搜索支持的不是太好,其中'chinese_vgram_lexer'分析器是對中文支持最好的,所以呢在創(chuàng)建全文搜索時應(yīng)該要制定一個索引的解析器,之后就可以利用sql語句去根據(jù)建立的索引字段并利用contains(字段名稱,'關(guān)鍵字')0 的函數(shù)去查詢了,很簡單,下面上代碼:

  --定義詞法分析器BEGIN ctx_ddl.create_preference ('joblexer', 'chinese_vgram_lexer');、END;

  說明:'joblexer'代表你使用的定義的分析器的名稱,名字可以隨便寫,便于創(chuàng)建索引時使用

  --創(chuàng)建全文索引并制定分析器CREATE INDEX 索引的名稱 ON 表名(表字段) indextype is ctxsys.context parameters('lexer 自定義的分析器的代指名稱');

  如:CREATE INDEX jobindex ON mr_job(name) indextype is ctxsys.context parameters('lexer joblexer');

  --刪除索引(不想要了,可以執(zhí)行這條語句刪除)drop index jobindex force

  --sql查詢語句select j.name from mr_job j where contains(j.name,'服務(wù)員')0

  --同步索引BEGINctx_ddl.sync_index('jobindex');END;

  (當(dāng)我們對表執(zhí)行了刪除、修改、增加的操作的話,就要對搜因進(jìn)行一下跟新了,不更新的話,索引對以前的信息有效,搜索的還是以前的信息,更改的或者添加的就永遠(yuǎn)也搜不到,所以修改了或者添加了就需要更新下索引了)

關(guān)鍵詞標(biāo)簽:oracle

相關(guān)閱讀

文章評論
發(fā)表評論

熱門文章 Oracle中使用alter table來增加,刪除,修改列的語法 Oracle中使用alter table來增加,刪除,修改列的語法 oracle中使用SQL語句修改字段類型-oracle修改SQL語句案例 oracle中使用SQL語句修改字段類型-oracle修改SQL語句案例 誤刪Oracle數(shù)據(jù)庫實(shí)例的控制文件 誤刪Oracle數(shù)據(jù)庫實(shí)例的控制文件 為UNIX服務(wù)器設(shè)置Oracle全文檢索 為UNIX服務(wù)器設(shè)置Oracle全文檢索

相關(guān)下載

    人氣排行 oracle中使用SQL語句修改字段類型-oracle修改SQL語句案例 Oracle中使用alter table來增加,刪除,修改列的語法 ORACLE SQL 判斷字符串是否為數(shù)字的語句 ORACLE和SQL語法區(qū)別歸納(1) oracle grant 授權(quán)語句 ORACLE修改IP地址后如何能夠使用 如何加速Oracle大批量數(shù)據(jù)處理 Oracle刪除表的幾種方法