因?yàn)轫?xiàng)目需要,需要對(duì)上傳的文件內(nèi)容進(jìn)行查詢。通過(guò)MSDN了解到Windows索引服務(wù)可以實(shí)現(xiàn)對(duì)文件的全文檢索,并可以通過(guò)SQL Server進(jìn)行查詢。項(xiàng)目將這兩者結(jié)合,實(shí)現(xiàn)對(duì)上傳文件的全文檢索的解決方案。
方案概要:
1. 改變文件存儲(chǔ)時(shí)的文件名
2. 配置索引服務(wù)器,并將索引服務(wù)器與MS SQL Server關(guān)聯(lián)。
3. 修改SQL語(yǔ)句,將進(jìn)行全文查詢語(yǔ)句的內(nèi)容加入查詢條件中
文件的存儲(chǔ)方式:
為了方便存儲(chǔ)以及方便索引,我們將上傳的文件存儲(chǔ)到一個(gè)目錄里面,為了保證上傳的文件名不重復(fù),采用GUID作為文件名,并且通過(guò)這個(gè)GUID于數(shù)據(jù)庫(kù)記錄相關(guān)聯(lián)。同時(shí),文件的后綴還保持原始文件的后綴,讓索引服務(wù)能夠識(shí)別該文檔。
配置索引服務(wù)
進(jìn)入計(jì)算機(jī)管理(Computer Management)程序(右鍵”我的電腦”->”管理”),并找到索引服務(wù)(Index Service)
配置索引服務(wù)的功能
(1)右鍵選擇索引服務(wù)彈出一個(gè)菜單
(2)選擇New->Catalog(新建一個(gè)編錄)
設(shè)置新增加的編錄
(1)輸入編錄的名字(這個(gè)名字需要與數(shù)據(jù)庫(kù)進(jìn)行關(guān)聯(lián),要注意命名,這里假設(shè)DCSII
(2)點(diǎn)Browse進(jìn)入選擇索引服務(wù)運(yùn)行目錄窗體
(3)選擇前面創(chuàng)建的索引運(yùn)行目錄(任意地方)
(4)點(diǎn)確定完成本次操作
在編錄創(chuàng)建號(hào)以后,需要給編錄增加目錄
(1)右鍵選擇剛剛創(chuàng)建的編錄
(2)選擇New->Directory(新建目錄)
新建索引目錄
(1)點(diǎn)擊Browse進(jìn)入目錄選擇頁(yè)面
(2)選擇要進(jìn)行全文檢索文件的目錄
(3)確定完成本次操作
完成創(chuàng)建后啟動(dòng)索引服務(wù)
(1)啟動(dòng)索引服務(wù)
(2)索引服務(wù)啟動(dòng)成功后索引編錄的信息,可以看到編錄信息就表示服務(wù)已經(jīng)啟動(dòng)成功。
將索引服務(wù)和SQL數(shù)據(jù)庫(kù)關(guān)聯(lián):
在SQL 查詢分析器(SQL Query Analyer)里執(zhí)行下面的存儲(chǔ)過(guò)程
EXEC sp_addlinkedserver Dcs, -- 連接服務(wù)器的名字,到后面查詢的時(shí)候要用到
'Index Server',
'MSIDXS',
'DCSII' -- 索引服務(wù)里新建的編錄名字
s.p.
更多資料請(qǐng)?jiān)L問(wèn):考試吧軟件水平考試欄目
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |