程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> SQL全文本檢索應用

SQL全文本檢索應用

編輯:關於SqlServer
基本知識

1. SQL Server7 的 DeskTop 版中沒有全文本檢索。



2. 一個表只能有一個全文本檢索。



3. 被檢索的表必須有單列的唯一索引。



4. 全文本的索引存儲在文件系統中,而非數據庫中。



5. 更新全文本索引的過程比常規索引要耗時,而且也不象常規索引那樣可以由數據庫系統立即更新。



6. 全文本索引包含在全文本目錄( Full-Text Catalog )中,每個數據庫可以包含一個或多個目錄,



   但一個目錄不能屬於多個數據庫。



7. 全文本檢索只能在真正的表上創建,不能是視圖,系統表,臨時表。



8. 全文本檢索會忽略某些噪音字( noise words),比如英文的 a,the,and,中文的'和','是'等等。



9. 如果在查詢中包含 noise words ,就會引發錯誤,在應用程序中應去除這些 noise Words。
啟動全文本檢索服務。

方法A:在企業管理器中打開 Support Services 文件夾,在 Full-Text Search 的右鍵菜單中選擇 Start。



方法B:在 SQL Server Service Manager 的 Services 下拉列表中選擇 Microsoft Search,



       並單擊 Start/Continue 按鈕。



方法C:使用 net start mssearch 的命令行方式。
使用全文本檢索向導( Full-Text Indexing Wizard )。
step1. 選擇被檢索的數據庫,在 Tools 的菜單中,選擇 Full-text Indexing,



進入歡迎( Welcome )的屏幕,單擊 next。



step2. 選擇被檢索的表,單擊 next。



step3. 選擇唯一索引,單擊 next。



step4. 選擇被索引的列,單擊 Add,該列顯示在右欄中。單擊 next。



step5. 選擇目錄(選擇已存在的目錄,或創建新的目錄),單擊 next。



step6. 選擇或創建 population schedule(可選項),單擊 next。



step7. 單擊 finish。
使用 SQL-DMO (以 VB 為例)
step1. 在工程的引用中選擇 Microsoft SQLDMO Object Library。



step2. 創建 SQLServer 對象。



Dim objSQL As New SQLDMO.SQLServer



obJSQL.Connect "localhost", "sa", ""



step3. 創建新的目錄,並加入到被索引的數據庫目錄中。



Dim objCatalog As New SQLDMO.FullTextCatalog



'使 pubs 為全文本檢索的數據庫



objSQL.Databases("pubs").EnableFullTextCatalogs



'創建新的目錄



objCatalog.Name = "ftcPubsTest"



'將新目錄加入到目錄集合中



objSQL.Databases("pubs").FullTextCatalogs.Add objCatalog



step4. 在表上創建全文本索引。



Dim objTable As New SQLDMO.Table



'指定被索引的表



Set objTable = obJSQL.Databases("pubs").Tables("authors")



'指定目錄名和唯一索引名



objTable.FullTextCatalogName = "ftcPubsTest"



objTable.UniqueIndexForFullText = "UPKCL_auidind"



objTable.FullTextIndex = True



'指定被索引的列



objTable.Columns("au_lname").FullTextIndex = True



objTable.Columns("au_fname").FullTextIndex = True



'激活該表上的全文本索引



objTable.FullTextIndexActive = True



step5. 啟動全文本目錄



objCatalog.Start SQLDMOFullText_Full



使用存儲過程
step1. 使 pubs 為全文本檢索的數據庫



USE Pubs



go



sp_fulltext_database 'enable'



step2. 創建新的目錄



sp_fulltext_catalog 'ftcPubsTest'
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved