SQL_Server全文索引的使用實(shí)例演示
本文示范完整的SQL SERVER數(shù)據(jù)庫(kù)全文索引以pubs數(shù)據(jù)庫(kù)為例
首先,介紹利用系統(tǒng)存儲(chǔ)過(guò)程創(chuàng)建全文索引的具體步驟:
1) 啟動(dòng)數(shù)據(jù)庫(kù)的全文處理功能 (sp_fulltext_database)
2) 建立全文目錄 (sp_fulltext_catalog)
3) 在全文目錄中注冊(cè)需要全文索引的表 (sp_fulltext_table)
4) 指出表中需要全文索引的列名 (sp_fulltext_column)
5) 為表創(chuàng)建全文索引 (sp_fulltext_table)
6) 填充全文目錄 (sp_fulltext_catalog)
---------********示例********-------------
以對(duì)pubs數(shù)據(jù)庫(kù)的title和notes列建立全文索引,之后使用索引查詢title列或notes列中包含有datebase 或computer字符串的圖書名稱:
在這之前,需要安裝Microsoft Search服務(wù),啟動(dòng)SQL server全文搜索服務(wù)
use pubs --打開(kāi)數(shù)據(jù)庫(kù)
go
--檢查數(shù)據(jù)庫(kù)pubs是否支持全文索引,如果不支持
--則使用sp_fulltext_database 打開(kāi)該功能
if(select databaseproperty('pubs','isfulltextenabled'))=0
execute sp_fulltext_database 'enable'
--建立全文目錄FT_PUBS
execute sp_fulltext_catalog 'FT_pubs','create'
--為title表建立全文索引數(shù)據(jù)元
execute sp_fulltext_table 'title','create','FT_pubs','UPKCL_titleidind'
--設(shè)置全文索引列名
execute sp_fulltext_column 'title','title','add'
execute sp_fulltext_column 'notes','notes','add'
--建立全文索引
--activate,是激活表的全文檢索能力,也就是在全文目錄中注冊(cè)該表
execute sp_fulltext_table 'title','activate'
--填充全文索引目錄
execute sp_fulltext_catalog 'FT_pubs','start_full'
go
--檢查全文目錄填充情況
While fulltextcatalogproperty('FT_pubs','populateStatus')<>0
begin
--如果全文目錄正處于填充狀態(tài),則等待30秒后再檢測(cè)一次
waitfor delay '0:0:30'
end
--全文目錄填充完成后,即可使用全文目錄檢索
select title
form
where CONTAINS(title,'database')
or CONTAINS(title,'computer')
or CONTAINS(notes,'database')
or CONTAINS(notes,'database')
以下介紹一下全文操作類的系統(tǒng)存儲(chǔ)過(guò)程
過(guò)程名稱:sp_fulltext_service
執(zhí)行權(quán)限:serveradmin或系統(tǒng)管理員
作 用:設(shè)置全文搜索屬性
過(guò)程名稱:sp_fulltext_catalog
執(zhí)行權(quán)限:db_owner及更高角色成員
作 用:創(chuàng)建和刪除一個(gè)全文目錄,啟動(dòng)或停止一個(gè)全文目錄的索引操作
過(guò)程名稱:sp_fulltext_database
執(zhí)行權(quán)限:db_owner角色成員
作 用:初始化全文索引或刪除數(shù)據(jù)庫(kù)中所有全文目錄
過(guò)程名稱:sp_fulltext_table
執(zhí)行權(quán)限:db_ddladnmin或db_owner角色成員
作 用:將一個(gè)表標(biāo)識(shí)為全文索引表或非全文索引表
過(guò)程名稱:sp_fulltext_column
執(zhí)行權(quán)限:db_ddladnmin角色成員
作 用:指出一個(gè)全文索引表中的那些列假如或退出全文索引
相關(guān)文章
PLSQL連接oracle數(shù)據(jù)庫(kù)過(guò)程圖解
這篇文章主要介紹了PLSQL連接oracle數(shù)據(jù)庫(kù)過(guò)程圖解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2008-02-02SQLServer行列互轉(zhuǎn)實(shí)現(xiàn)思路(聚合函數(shù))
這篇文章主要為大家詳細(xì)介紹了SQLServer行列互轉(zhuǎn)實(shí)現(xiàn)思路,使用聚合函數(shù)pivot/unpivot實(shí)現(xiàn)行列互轉(zhuǎn),感興趣的小伙伴們可以參考一下2016-03-03SQL Server中Table字典數(shù)據(jù)的查詢SQL示例代碼
這篇文章主要給大家介紹了關(guān)于SQL Server中Table字典數(shù)據(jù)的查詢SQL的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2018-10-10SQL Server自動(dòng)更新統(tǒng)計(jì)信息的基本算法
最初接觸SQL Server的時(shí)候認(rèn)為SQLServer數(shù)據(jù)更改的同時(shí)就會(huì)相應(yīng)的更新統(tǒng)計(jì)信息,其實(shí)SQL Server不是這樣做的.基于性能考慮,SQL Server使用下面的算法更新統(tǒng)計(jì)信息2012-08-08sqlserver合并DataTable并排除重復(fù)數(shù)據(jù)的通用方法分享
網(wǎng)上合并DataTable通用方法的文章很多,結(jié)合項(xiàng)目開(kāi)發(fā)中的常用需求,并借鑒網(wǎng)上的做法,寫了一個(gè)合并DataTable的通用方法,主要功能是合并兩個(gè)DataTable(結(jié)構(gòu)可以不同,如字段不完全一致),并可以根據(jù)某一列值進(jìn)行排重處理2011-12-12sqlserver中創(chuàng)建鏈接服務(wù)器圖解教程
鏈接服務(wù)器在跨數(shù)據(jù)庫(kù)/跨服務(wù)器查詢時(shí)非常有用(比如分布式數(shù)據(jù)庫(kù)系統(tǒng)中),本文將以圖文方式詳細(xì)說(shuō)明如何利用SQL Server Management Studio在圖形界面下創(chuàng)建鏈接服務(wù)器。2010-09-09