成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

教您5步建立oracle全文索引

數(shù)據(jù)庫 Oracle
使用索引可以提高數(shù)據(jù)庫的查詢效率,下面就為您介紹oracle全文索引的建立方法,如果您遇到過類似方面的問題,不妨一看。

oracle全文索引相信大家都有一定的了解,下面就教您如何建立oracle全文索引,如果您對oracle全文索引方面感興趣的話,不妨一看。

步驟一 檢查和設(shè)置數(shù)據(jù)庫角色
首先檢查數(shù)據(jù)庫中是否有CTXSYS用戶和CTXAPP腳色。如果沒有這個用戶和角色,意味著你的數(shù)據(jù)庫創(chuàng)建時未安裝intermedia功能。你必須修改數(shù)據(jù)庫以安裝這項(xiàng)功能。 默認(rèn)安裝情況下,ctxsys用戶是被鎖定的,因此要先啟用ctxsys的用戶。

步驟二 賦權(quán)
在ctxsys用戶下把ctx_ddl的執(zhí)行權(quán)限賦于要使用oracle全文索引的用戶,例:

grant execute on ctx_ddl to pomoho;

步驟三 設(shè)置詞法分析器(lexer)
Oracle實(shí)現(xiàn)全文檢索,其機(jī)制其實(shí)很簡單。即通過Oracle專利的詞法分析器(lexer),將文章中所有的表意單元(Oracle 稱為 term)找出來,記錄在一組以dr$開頭的表中,同時記下該term出現(xiàn)的位置、次數(shù)、hash 值等信息。檢索時,Oracle 從這組表中查找相應(yīng)的term,并計(jì)算其出現(xiàn)頻率,根據(jù)某個算法來計(jì)算每個文檔的得分(score),即所謂的‘匹配率’。而lexer則是該機(jī)制的核心,它決定了全文檢索的效率。Oracle 針對不同的語言提供了不同的 lexer, 而我們通常能用到其中的三個:

n      basic_lexer: 針對英語。它能根據(jù)空格和標(biāo)點(diǎn)來將英語單詞從句子中分離,還能自動將一些出現(xiàn)頻率過高已經(jīng)失去檢索意義的單詞作為‘垃圾’處理,如if , is 等,具有較高的處理效率。但該lexer應(yīng)用于漢語則有很多問題,由于它只認(rèn)空格和標(biāo)點(diǎn),而漢語的一句話中通常不會有空格,因此,它會把整句話作為一個term,事實(shí)上失去檢索能力。以‘中國人民站起來了’這句話為例,basic_lexer 分析的結(jié)果只有一個term ,就是‘中國人民站起來了’。此時若檢索‘中國’,將檢索不到內(nèi)容。

n      chinese_vgram_lexer: 專門的漢語分析器,支持所有漢字字符集(ZHS16CGB231280 ZHS16GBK ZHT32EUC ZHT16BIG5 ZHT32TRIS ZHT16MSWIN950 ZHT16HKSCS UTF8 該分析器按字為單元來分析漢語句子。‘中國人民站起來了’這句話,會被它分析成如下幾個term: ‘中’,‘中國’,‘國人’,‘人民’,‘民站’,‘站起’,起來’,‘來了’,‘了’。可以看出,這種分析方法,實(shí)現(xiàn)算法很簡單,并且能實(shí)現(xiàn)‘一網(wǎng)打盡’,但效率則是差強(qiáng)人意。

n      chinese_lexer: 這是一個新的漢語分析器,只支持utf8字符集。上面已經(jīng)看到,chinese vgram lexer這個分析器由于不認(rèn)識常用的漢語詞匯,因此分析的單元非常機(jī)械,像上面的‘民站’,‘站起’在漢語中根本不會單獨(dú)出現(xiàn),因此這種term是沒有意義的,反而影響效率。chinese_lexer的***改進(jìn)就是該分析器 能認(rèn)識大部分常用漢語詞匯,因此能更有效率地分析句子,像以上兩個愚蠢的單元將不會再出現(xiàn),極大 提高了效率。但是它只支持 utf8, 如果你的數(shù)據(jù)庫是zhs16gbk字符集,則只能使用笨笨的那個Chinese vgram lexer.

如果不做任何設(shè)置,Oracle 缺省使用basic_lexer這個分析器。要指定使用哪一個lexer, 可以這樣操作:

***. 當(dāng)前用戶下下建立一個preference(例:在pomoho用戶下執(zhí)行以下語句)

exec ctx_ddl.create_preference ('my_lexer', 'chinese_vgram_lexer');

第二.   在建立oracle全文索引索引時,指明所用的lexer:

CREATE INDEX myindex ON mytable(mycolumn) indextype is ctxsys.context

parameters('lexer my_lexer');

這樣建立的全文檢索索引,就會使用chinese_vgram_lexer作為分析器。

步驟四 建立索引

通過以下語法建立全文索引
CREATE INDEX [schema.]index on [schema.]table(column) INDEXTYPE IS ctxsys.context [ONLINE]LOCAL [(PARTITION [partition] [PARAMETERS('paramstring')][, PARTITION [partition] [PARAMETERS('paramstring')]])][PARAMETERS(paramstring)] [PARALLEL n] [UNUSABLE];
例:
CREATE INDEX ctx_idx_menuname ON pubmenu(menuname) indextype is ctxsys.context parameters('lexer my_lexer')

步驟五 使用索引

使用全文索引很簡單,可以通過:

select * from pubmenu where contains(menuname,'上傳圖片')>0全文索引的種類
建立的Oracle Text索引被稱為域索引(domain index),包括4種索引類型:

l          CONTEXT

l          CTXCAT

l          CTXRULE

l          CTXXPATH

 

 

【編輯推薦】

創(chuàng)建Oracle索引的方法

C#連接Oracle數(shù)據(jù)庫查詢數(shù)據(jù)

使用oracle存儲過程分頁的實(shí)例

Oracle數(shù)據(jù)庫備份的三個常見誤區(qū)

定制正確的oracle備份策略

 

責(zé)任編輯:段燃 來源: 互聯(lián)網(wǎng)
相關(guān)推薦

2011-05-13 14:34:31

Oracle全文索引設(shè)置

2010-09-27 11:29:36

SQL全文索引

2010-11-16 09:49:22

Oracle重建索引

2009-04-22 14:19:32

Oracle中文索引基礎(chǔ)

2010-11-25 14:56:46

MySQL全文查詢

2010-09-27 11:42:44

SQL全文索引

2011-04-18 11:00:12

SQL Server全文索引

2010-11-10 14:06:44

SQL Server全

2022-09-07 08:16:09

MySQL索引

2011-08-30 13:54:29

SQL Server全文索引

2010-11-10 14:26:44

Sql Server全

2010-11-18 16:41:13

oracle死鎖

2010-10-26 10:48:16

ORACLE備份

2010-10-12 14:53:31

mysql索引優(yōu)化

2010-05-28 11:14:39

MySQL全文索引限制

2010-07-22 09:33:45

SQL Server全

2010-11-18 16:27:37

2010-10-28 11:29:18

ORACLE用戶權(quán)限

2010-10-13 15:59:21

MySQL索引

2010-10-20 11:07:21

sql server全
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 高清成人av| 人人人艹 | 中文字字幕一区二区三区四区五区 | 亚洲精品自在在线观看 | 91在线视频免费观看 | 日韩视频精品在线 | 99re视频在线 | 91pron在线| 在线观看h视频 | 国产高清视频一区 | 成人av一区二区三区 | 欧美爱爱视频网站 | 久久久91 | 免费成人av | 久久小视频| 亚洲一本| 欧美性影院 | 久久久精品 | 国产视频中文字幕 | 北条麻妃99精品青青久久主播 | 18性欧美| 欧美成人精品激情在线观看 | 久草免费电影 | 一区日韩 | 一级做a爰片性色毛片16美国 | 亚洲色欲色欲www | 亚洲国产成人精品久久久国产成人一区 | 亚洲免费久久久 | 亚洲精视频 | 狠狠躁天天躁夜夜躁婷婷老牛影视 | 精品亚洲永久免费精品 | 免费看大片bbbb欧美 | 亚洲视频在线看 | 国产精品色一区二区三区 | 日韩亚洲视频在线 | 久久中文视频 | 黄色毛片在线观看 | 欧美精品网 | 日韩中文字幕在线播放 | 国产在线精品一区二区三区 | 日韩精品中文字幕一区二区三区 |