2011-07-31 4 views
0

SQL Serverテーブルに多数のバイナリファイルが格納されています。私はそのテーブルに全文索引を作成しました。この索引は、文書を含むバイナリ・フィールドも索引付けします。私は適切なiFiltersをインストールして、SQL Serverでも.doc、.docx、および.pdfファイルを読み取ることができます。SQL Serverを使用してフルテキストインデックス付きvarbinaryフィールドの長さを調べるにはどうすればよいですか?

DATALENGTH関数を使用すると、完全なドキュメントの長さ/サイズを取得できますが、レイアウトやその他の無駄な情報も含まれます。私は文書のテキストの長さを知りたい。

iFilters SQL Serverを使用すると、このような「複雑な」ドキュメントのテキストのみを取得できますが、テキストの長さを判断するのにも使用できますか?

+0

さらに、私はMicrosoft SQL 2008 R2サーバーを使用しています。 – Oosterman

答えて

0

私が知っている限りでは(それほど多くありません)、FTS経由でドキュメントのプロパティを照会する方法はありません。私は、データベースに文書を挿入する前に、単語の数を取得し、それと一緒に数をテーブルの別の列に挿入します。 Word文書の場合は、Document.Words.Countプロパティを使用できます。私は、PDFドキュメントのための同等のメカニズムが何であるか分かりません。

+0

これは確かに私がやったことです。私はVSTOを使用しませんでしたが。私はc#スクリプトを使用してデータベースからドキュメントを取得し、適切なiFilterを使用して任意のファイル形式のドキュメントのテキストを取得しました。 – Oosterman