国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > SQL Server > 正文

淺析SQL Server全文檢索查詢

2019-11-03 08:35:32
字體:
來源:轉載
供稿:網友
 因為項目需要,需要對上傳的文件內容進行查詢。通過MSDN了解到Windows索引服務可以實現對文件的全文檢索,并可以通過SQL Server進行查詢。項目將這兩者結合,實現對上傳文件的全文檢索的解決方案。

  方案概要:

  1. 改變文件存儲時的文件名

  2. 配置索引服務器,并將索引服務器與MS SQL Server關聯。

  3. 修改SQL語句,將進行全文查詢語句的內容加入查詢條件中

  文件的存儲方式:

  為了方便存儲以及方便索引,我們將上傳的文件存儲到一個目錄里面,為了保證上傳的文件名不重復,采用GUID作為文件名,并且通過這個GUID于數據庫記錄相關聯。同時,文件的后綴還保持原始文件的后綴,讓索引服務能夠識別該文檔。

  配置索引服務

  進入計算機管理(Computer Management)程序(右鍵”我的電腦”->”管理”),并找到索引服務(Index Service)

  配置索引服務的功能

  (1)右鍵選擇索引服務彈出一個菜單

  (2)選擇New->Catalog(新建一個編錄)

  設置新增加的編錄

  (1)輸入編錄的名字(這個名字需要與數據庫進行關聯,要注意命名,這里假設DCSII

  (2)點Browse進入選擇索引服務運行目錄窗體

  (3)選擇前面創建的索引運行目錄(任意地方)

  (4)點確定完成本次操作

  在編錄創建號以后,需要給編錄增加目錄

  (1)右鍵選擇剛剛創建的編錄

  (2)選擇New->Directory(新建目錄)

  新建索引目錄

  (1)點擊Browse進入目錄選擇頁面

  (2)選擇要進行全文檢索文件的目錄

  (3)確定完成本次操作

  完成創建后啟動索引服務

  (1)啟動索引服務

  (2)索引服務啟動成功后索引編錄的信息,可以看到編錄信息就表示服務已經啟動成功。

  將索引服務和SQL數據庫關聯:

  在SQL 查詢分析器(SQL Query Analyer)里執行下面的存儲過程

  EXEC sp_addlinkedserver Dcs, -- 連接服務器的名字,到后面查詢的時候要用到

  'Index Server',

  'MSIDXS',

  'DCSII' -- 索引服務里新建的編錄名字

  索引服務的性能調整方法1

  (1)右鍵選擇索引服務

  (2)選擇 All Tasks-> Tune Perrformance

  (3)選擇用戶自定義

  (4)點擊Customize進入性能調整窗體

  (5)將Index和Querying的屬性移動到最右邊

  (6)點確定完成操作

  性能調整方法2

  如果服務器不需要對整個系統的文件進行索引,可以停止或者刪除System編錄。

  MSSQL對索引服務器的調用

  1. 通過sql語句查詢連接服務器的內容

  SELECT Q.*

  FROM OpenQuery(dcs, --連接服務器名字

  'SELECT FileName, Size, DocAuthor, path --在連接服務器里的sql語句

  FROM SCOPE()

  WHERE CONTAINS(''番號 and abc'') '

  ) AS Q

  2. 因為SQL語句不支持動態輸入的字符串,因此查詢字符串只好在C#代碼里進行拼接

  s.p.

  實不用將文件保存到數據庫外面也能實現在數據庫里實現全文搜索。具體方案是在SQL Server 2000里安全全文搜索功能,用image字段存儲文件內容,并新增一個字段存放文件類型,然后在通過企業管理器新建全文索引項的時候將這兩個字段匹配就可以。不過從數據庫的/率以及今后數據庫備份和恢復的效率上來看,將文件放在數據庫的設計不是太好。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 西和县| 荥经县| 中江县| 新余市| 五寨县| 阿拉尔市| 丁青县| 潮安县| 伽师县| 宣城市| 广南县| 忻州市| 类乌齐县| 两当县| 剑阁县| 扎兰屯市| 正阳县| 达孜县| 连平县| 神农架林区| 铅山县| 航空| 舞钢市| 沭阳县| 尖扎县| 荔浦县| 阿巴嘎旗| 巨野县| 卢湾区| 广汉市| 玛曲县| 边坝县| 贺州市| 平昌县| 于都县| 林州市| 来凤县| 静乐县| 大足县| 乐都县| 通辽市|