本技巧摘自SQL Server雜志的一期
如需了解更多的技巧
請訪問SQL Server的使用技巧中心
問我需要將Microsoft Word文檔導入至SQL Server並索引這些文檔以便在關系查詢中使用這些文檔怎樣導入和索引文檔呢? 答
SQL Server允許您以多種方式導入Word文檔
讓我們看看幾種最常用的方法
請注意
在將文檔導入至SQL Server之前
您需要創建一個image數據類型列
用於存放數據
然後
您可以使用textcopy
exe命令行工具將image文件讀入數據庫
從而完成文檔的導入操作
如果需要該工具的基本說明文檔
請在命令提示狀態下鍵入textcopy /?
將Word文檔導入SQL Server的另一個方法是使用Microsoft ActiveX Directory Object(ADO)Stream接口編寫導入代碼
您可以在Microsoft產品支持服務(PSS)的通過使用ADO Stream對象訪問和修改SQL Server BLOB數據一文中找到示例代碼
此外
您也可以將二進制數據移到SQL Server中
有關這一方法的詳細說明
請參閱PSS的使用ADO檢索和更新SQL Server文本域一文
移動二進制數據允許您將數據的一部分存放在數據庫中
這在需要控制數據格式時尤其有用
例如
如果只需要數據中
到
之間的字節
導入二進制數據的速度遠遠高於使用ADO Stream接口的速度
這是由於SQL Server從磁盤上檢索數據的量大為減少
人們通常使用這一技術來存儲位掩碼
用於表示應用程序的開或關標志位
SQL Server
自帶了說明了如何移動二進制數據的示例代碼
如需查看該代碼
只需在安裝有SQL Server
光盤上代碼示例的驅動器上選擇 \Program Files\Microsoft SQL Server\
\Tools\DevTools\Samples\ado路徑
展開該可執行文件
在Visual Basic目錄下查找Samples子目錄
在Employee示例下
注意一下該代碼是如何使用FillDataFields()函數的
如需索引Word文檔
SQL Server
和SQL Server
都提供了全文搜索組件
該組件混合使用了多種技術
用以索引大型文本和image列
在執行全文搜索時
您需要指定image列所含的文件類型
以及從二進制數據中析取信息所需的篩選(filter)
有關使用全文索引的詳細信息
請參閱SQL Server在線書籍中的相關主題
並閱讀David Jones
年
月發表在SQL Server雜志網站上的名為構建更好的搜索引擎一文
請注意
索引Word文檔並不會自動生成包含文檔中關鍵字的一組關系表
但是
索引文件讓您將這些Word文檔包含在您的搜索中
以下是從數據中析取關鍵字的可行方式
使用OLE自動處理從文檔中讀取用戶定義的關鍵字
在裝載該文檔時將這些關鍵字保存在關系表中
使用OLE自動處理打開文檔並將其保存為文本(
txt)格式
為了析取重要的詞語
您可以使用自己的
詞語分析器
遍歷該文本文件
文字分析器查看文檔中的每個詞語
去除一些無用文字
並將每個唯一的詞語與其出現的次數一道存儲起來
在新的全文索引文檔中搜索特定的關鍵字
並將這些關鍵字輸入到關系表中
SQL Server
提供了多個強大的工具和接口
用於幫助用戶實現二進制Microsoft Office文檔的快速裝載
搜索和檢索
From:http://tw.wingwit.com/Article/program/SQLServer/201311/22184.html