SQL Server 2000 全文檢索技術(shù)_第1頁(yè)
SQL Server 2000 全文檢索技術(shù)_第2頁(yè)
SQL Server 2000 全文檢索技術(shù)_第3頁(yè)
SQL Server 2000 全文檢索技術(shù)_第4頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、SQL Server 2000 全文檢索技能1全文檢索及其生長(zhǎng)狀態(tài)隨著海量信息的出現(xiàn)以及盤(pán)算機(jī)存儲(chǔ)技能的生長(zhǎng),文獻(xiàn)數(shù)據(jù)庫(kù)正由書(shū)目數(shù)據(jù)庫(kù)向全文數(shù)據(jù)庫(kù)變化。這一變化使得全文檢索技能得到空前的生長(zhǎng)。常用的實(shí)現(xiàn)全文檢索的要領(lǐng)重要有以下兩種:第一種要領(lǐng)是不合錯(cuò)誤數(shù)據(jù)庫(kù)創(chuàng)立索引而直接對(duì)文章舉行匹配的要領(lǐng)。這種要領(lǐng)由于沒(méi)有創(chuàng)立索引庫(kù),因此所占空間較少,但同時(shí)正是由于它沒(méi)有索引庫(kù),以是在舉行全文匹配時(shí)要消耗大量的時(shí)間。第二種方規(guī)那么是一種為全文創(chuàng)立倒排索引庫(kù)的要領(lǐng)。這種要領(lǐng)可以大大節(jié)流檢索的時(shí)間。但同時(shí),這種要領(lǐng)必要占用必然的存儲(chǔ)空間來(lái)創(chuàng)立索引庫(kù)。如今,國(guó)表里對(duì)全文檢索的研究可以說(shuō)是到達(dá)一個(gè)熱潮。很多研究機(jī)構(gòu)

2、和貿(mào)易構(gòu)造都在舉行這方面的研究。國(guó)際最具影響力的全文檢索評(píng)估機(jī)構(gòu)當(dāng)屬TRE(TextRetrievalnferene)。它是由美國(guó)技能和尺度研究所(NIST)和美國(guó)高級(jí)研究籌劃局(DARPA)配合舉行、自1992年以來(lái)每年一次的全文檢索評(píng)估集會(huì),集會(huì)到場(chǎng)者帶來(lái)研究的檢索體系以供專(zhuān)家舉行評(píng)估。傳統(tǒng)的信息單元,圖書(shū)館等也開(kāi)始創(chuàng)立全文數(shù)據(jù)庫(kù),引進(jìn)種種全文檢索技能。一些軟件公司,也紛紛推出全文檢索軟件。海內(nèi)比力有代表性的如TRS等,而外洋比力知名的有下文將要先容的irsft公司開(kāi)拓的SQLServer2000。2在SQLServer2000中設(shè)置全文檢索辦事SQLServer是irsft公司在本來(lái)和S

3、ybase公司互助的底子上推出的一款面向高端的數(shù)據(jù)庫(kù)體系。而SQLServer2000版本那么是最新的、大型聯(lián)機(jī)事件處置懲罰的新型數(shù)據(jù)庫(kù)平臺(tái)。它繼續(xù)了SQLServer從前版本的一些強(qiáng)盛的上風(fēng),如簡(jiǎn)樸易用、具有精良的不變性和高效性等等。同時(shí),它的成效比從前的版本越發(fā)強(qiáng)盛,界面越發(fā)友愛(ài)??傊?,無(wú)論是在成效、寧?kù)o性、可維護(hù)性,照舊在易操縱性上都較從前版本有了長(zhǎng)足的進(jìn)步。它的全文檢索成效設(shè)置簡(jiǎn)樸,利用非常便利。我在創(chuàng)立關(guān)于信息檢索的英文論文題名、文摘數(shù)據(jù)庫(kù)的歷程中,利用了SQLServer2000。由于文摘文本單詞量均勻在500個(gè)擺布,并且論文記載數(shù)目較多,假設(shè)不為文摘?jiǎng)?chuàng)立全文索引庫(kù),將嚴(yán)峻影響檢索

4、服從。因此,我利用SQLServer2000的全文檢索成效為這個(gè)數(shù)據(jù)庫(kù)提供了全文檢索辦事。2.1創(chuàng)立全文檢索辦事的歷程如下:第一步,在SQLServer中創(chuàng)立一個(gè)全文數(shù)據(jù)庫(kù)EnglishData。在該數(shù)據(jù)庫(kù)中創(chuàng)立一個(gè)表Papers。該表的字段有paper_id(代表論文的挨次,數(shù)據(jù)范例為int,長(zhǎng)度為4,要求非空,并為標(biāo)知,標(biāo)知種子為1,主動(dòng)增量為1)、paperAitle(代表論文的標(biāo)題問(wèn)題,數(shù)據(jù)范例為vhar,長(zhǎng)度為200,要求非空)、paper_abstrat(代表論文的文摘,數(shù)據(jù)范例為vhar,長(zhǎng)度為8000,要求非空)。第二步,為創(chuàng)立全文索引,必然要為該表創(chuàng)立唯一索引(UniqueI

5、ndex)。我為Papers表的paper_id字段創(chuàng)立唯一索引。第三步,將數(shù)據(jù)漸漸導(dǎo)入到表Papers中。第四步,翻開(kāi)SQLServer的企業(yè)辦理器,在左側(cè)的樹(shù)視中點(diǎn)擊數(shù)據(jù)庫(kù)。然后點(diǎn)開(kāi)數(shù)據(jù)庫(kù)EnglishData。選擇“全文目次。點(diǎn)擊右鍵,選擇“新建全文目次,創(chuàng)立全文目次Paper-AbstratFullSearh,然后創(chuàng)立名稱(chēng)為AbstraetSearh的調(diào)理。其他擔(dān)當(dāng)默認(rèn)。第五步,選擇企業(yè)辦理器的右側(cè)的表Papers,單擊右鍵,選中“全文索引表,單擊“在表上創(chuàng)立全文索引。將會(huì)出現(xiàn)“全文索引指導(dǎo)窗口。點(diǎn)擊“下一步會(huì)到達(dá)“選擇索引窗口。由于本表只有一個(gè)唯一索引paper_id,點(diǎn)擊“下一步,

6、會(huì)出現(xiàn)“選擇表中的列窗口。選擇“paper_abstrat字段,然后點(diǎn)擊“下一步,出現(xiàn)“選擇目次窗口,擔(dān)當(dāng)默認(rèn)設(shè)置,點(diǎn)擊“下一步,出現(xiàn)的窗口“選擇或創(chuàng)立添補(bǔ)調(diào)理(可選)窗口,擔(dān)當(dāng)默認(rèn)設(shè)置再點(diǎn)擊下一步。出現(xiàn)“正在完成SQLServer全文索引指導(dǎo),點(diǎn)擊“完成。完成設(shè)置。第六步,選擇表Papers,點(diǎn)擊右鍵,選擇“全文索引表,點(diǎn)擊“啟動(dòng)完全添補(bǔ),等候完成。第七步,設(shè)置數(shù)據(jù)源名。在DB辦理器中的“體系DSN中,單擊“添加,選擇“SQLServer。在數(shù)據(jù)源名中輸入“EnglishData,然后舉行客戶設(shè)置。第八步,假設(shè)以后對(duì)表Papers舉行任何的修改(包羅添加、刪除記載和對(duì)原記載舉行編纂),都要重

7、復(fù)第六步的操縱。這一步是為了包管全文索引庫(kù)可以或許與表Papers的修改同步。以上是創(chuàng)立全文索引的全歷程。完成創(chuàng)立后,即可以利用尺度的TSQL語(yǔ)句對(duì)其舉行全文檢索。2.2在eb平臺(tái)上舉行全文檢索固然利用TsQL語(yǔ)句可以很便利地舉行全文檢索,但筆者思量到不是全部的用戶都把握了TsQL語(yǔ)句,因此為便利用戶檢索,筆者創(chuàng)立了一個(gè)基于eb界面的全文檢索平臺(tái)。用戶只需將檢索詞提交給eb辦事器,辦事器利用ASP調(diào)用AD控件來(lái)對(duì)SQLServer2000數(shù)據(jù)庫(kù)舉行查詢,并將檢索效果以eb頁(yè)面的方法返回給用戶。ASP(AtiveServerPages)是微軟公司創(chuàng)立的一套辦事器端足本情況。方案職員可以結(jié)合HTL

8、、ASP指令和AtiveX控件創(chuàng)立動(dòng)態(tài)、交互且高效的eb辦事器應(yīng)用步伐。由于全部的步伐都嵌入HTL中且在辦事器端實(shí)行,因此不必?fù)?dān)憂客戶端的欣賞器可否運(yùn)行步伐。同時(shí),它還具有簡(jiǎn)樸、易開(kāi)拓、兼容性好等長(zhǎng)處。AD(AtiveXDatabjet,AtiveX數(shù)據(jù)工具)是一個(gè)ASP內(nèi)置的AtiveX辦事器組件(AtiveXServerpnent),用于數(shù)據(jù)庫(kù)拜候,可把它與ASP結(jié)合起來(lái),創(chuàng)立提供數(shù)據(jù)庫(kù)信息的網(wǎng)頁(yè)內(nèi)容,對(duì)數(shù)據(jù)庫(kù)舉行查詢、插入、更新、刪除等操縱。AD工具可以操縱全部DB驅(qū)動(dòng)步伐存取的數(shù)據(jù)源格式。同時(shí),AD還具有簡(jiǎn)樸易用、速率快等長(zhǎng)處。SQLServer2000的全文檢索辦事可以支持布爾檢索和

9、加權(quán)檢索等高級(jí)檢索。用ASP可以實(shí)現(xiàn)這些檢索成效。3全文檢索語(yǔ)句N(xiāo)TAINS和FREETEXT的利用全文檢索利用戶可以高效檢索存儲(chǔ)在數(shù)據(jù)庫(kù)的har、varhar、text、ntext、nhar、nvarhar等數(shù)據(jù)范例列中的文本數(shù)據(jù)。在舉行全文檢索之前,應(yīng)創(chuàng)立和填湊數(shù)據(jù)庫(kù)全文索引。3.1全文索引為了支持全文索引操縱,SQLServer70新增了一些新的存儲(chǔ)歷程和Transat-SQL語(yǔ)句。利用這些存儲(chǔ)歷程創(chuàng)立全文索引的詳細(xì)步調(diào)如下(括號(hào)內(nèi)為每步所調(diào)用的存儲(chǔ)歷程名稱(chēng)):(1)啟動(dòng)數(shù)據(jù)庫(kù)的全文處置懲罰成效(sp_fulltexLdatabase);(2)創(chuàng)立全文目次(sp_fulhexLatalg

10、);(3)在全文目次中注冊(cè)必要全文索引的表(sp_fulltexttable);(4)指出表中必要全文檢索的列名(sp_fulltexLelun);(5)為表創(chuàng)立全文索引(sp_fulltexLtable);(6)添補(bǔ)全文目次(sp_fulltext_atalg)。下面舉例說(shuō)明:在本例中,對(duì)test數(shù)據(jù)庫(kù)bk表中title列和ntes列創(chuàng)立全文索引。/起首先啟動(dòng)SQLServer的全文搜刮辦事。usetest/翻開(kāi)數(shù)據(jù)庫(kù)g/翻開(kāi)全文索引支持exeutesp_fulltext_databaseenable/創(chuàng)立全文目次ft_pubsexeutesp_fulltext_atalgft_test,r

11、eate/為titles表創(chuàng)立全文索引數(shù)據(jù)元,pk_title為bk表中由主鍵所創(chuàng)立的唯一索引,此參數(shù)必需。exeutesp_fulltext_tablebk,reate,ft_test,pk_title/設(shè)置全文索引列名exeutesp_fulltext_elunbk,title,addexeutesp_fulltext_lunbk,ntes,add/創(chuàng)立全文索引exeutesp_fulltexLtablebk,ativate/添補(bǔ)全文索引目次exeutesp_fulltext_atalgft_test,start_fullg至此,全文索引創(chuàng)立完畢。3.2全文檢索SQLServer2000提

12、供的全文檢索語(yǔ)句重要有NTAINS和FREETEXT。NTAINS語(yǔ)句的成效是在表全部列或指定列中搜刮:一個(gè)字或短語(yǔ);一個(gè)字或短語(yǔ)的前綴;與一個(gè)字相近的另一個(gè)字;一個(gè)字的派生字;一個(gè)重復(fù)出現(xiàn)的字。NTAINS語(yǔ)句的語(yǔ)法格式為:NTAINS(lun*),)此中,lun說(shuō)明被搜刮列,利用時(shí)說(shuō)明對(duì)表中全部全文索引列蓮行搜刮ntains_searh_nditin說(shuō)明NTAINS語(yǔ)句的搜刮內(nèi)容,其語(yǔ)法格式為:|)|ANDIANDNT|R.n下面就siple_ter和predix_ter參數(shù)做一扼要說(shuō)明:sipleter指出NTAINS語(yǔ)句所搜刮的單字或短語(yǔ),當(dāng)為一個(gè)短語(yǔ)時(shí),必需利用雙引號(hào)作為定界符。其格

13、式為:rd|“phrasepredix_ter說(shuō)明NTAINS語(yǔ)句所搜刮的字或短語(yǔ)前綴,其格式為:“rd*|“phrase比方,下面語(yǔ)句檢索b0k表的title列和ntes列中包羅database或puter字符串的圖書(shū)名稱(chēng)及其解釋信息:selettitle,ntesfrbkherentains(tilte,database)rntains(ntes,datable)rntains(title,puter)rntains(ntes,puter)FREETEXT語(yǔ)句的成效是在一個(gè)表的全部列或指定列中搜刮一個(gè)自由文本格式的字符串,并返回與該字符串匹配的數(shù)據(jù)行。以是,F(xiàn)REETEXT語(yǔ)句所實(shí)行的成效

14、又稱(chēng)做自由式全文查詢。FREETEXT語(yǔ)句的語(yǔ)法格式為:FREETEXT(lun*,freetext_string)此中,lun說(shuō)明被搜刮列,利用*時(shí)說(shuō)明對(duì)表中的全部全文索引列舉行搜刮。Freetext_string參數(shù)指出所搜刮的自由文本格式字符串。比方,下面語(yǔ)句利用FREETEXT語(yǔ)句搜刮bk表中包羅SuessfulLife字符串的數(shù)據(jù)行:selettitle,ntesfrbkherefreetext(*,SuessfulLife)4竣事語(yǔ)通過(guò)學(xué)習(xí)和理論,我以為SQLServer2000的全文檢索辦事有以下長(zhǎng)處:第一,簡(jiǎn)樸易用。由于SQLServer2000的全文檢索辦事已經(jīng)集成到整個(gè)辦事中,因此,全文檢索可以利用“企業(yè)辦理器舉行同一的圖形界面的辦理。并且,舉行檢索時(shí)可以利用尺度的TSQL語(yǔ)句,學(xué)習(xí)、利用非常便利。第二,SQLServer2000成效強(qiáng)盛。好比,其自身具有“噪音詞(niseter)過(guò)濾的機(jī)制。在“.SSQLTDATASQLServ

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論