次の方法で共有


検索用フィルターの構成と管理

varbinaryvarbinary(max)image、または xml データ型列のドキュメントにインデックスを作成するには、追加の処理が必要です。 この処理はフィルターによって実行します。 フィルターは、ドキュメントから (フォーマットを解除して) 文字情報を抽出します。 次に、テーブル列に関連付けられている言語のワード ブレーカー コンポーネントにテキストを送ります。

フィルターは、ドキュメント型 (.doc、.pdf、.xls、.xml など) に固有です。 これらのフィルターは IFilter インターフェイスを実装しています。 ドキュメント型の一覧を参照するには、 sys.fulltext_document_types カタログ ビューに対してクエリを実行してください。

バイナリ ドキュメントは、単一の varbinary(max) 列または image 列に格納できます。 ドキュメントごとに、SQL Serverファイル拡張子に基づいて適切なフィルターを選択します。 ファイル拡張子は、ファイルが または image 列にvarbinary(max)格納されている場合は表示されないため、ファイル拡張子 (.doc、.xls、.pdfなど) は、型列と呼ばれるテーブル内の別の列に格納する必要があります。 この型列には任意の文字ベースのデータ型を指定でき、Microsoft Word ドキュメントの.docなど、ドキュメント ファイル拡張子が含まれます。 Adventure Works の Document テーブルの Document 列の型 varbinary(max)は で、型列 FileExtension は 型 nvarchar(8)です。

注意

フィルターは、実装によっては、親オブジェクトに埋め込まれたオブジェクトを処理できます。 ただし、SQL Serverでは、他のオブジェクトへのリンクに従うフィルターは構成されません。

SQL Serverは、独自の XML フィルターと HTML フィルターをインストールします。 さらに、オペレーティング システムに既にインストールされている Microsoft 独自の形式 (.doc、.xdoc、.pptなど) のフィルターも、SQL Serverによって読み込まれます。 SQL Server のインスタンスに現在読み込まれているフィルターを識別するには、次のようにsp_help_fulltext_system_components ストアド プロシージャを使用します。

EXEC sp_help_fulltext_system_components 'filter';   

ただし、Microsoft 以外の形式にフィルターを使用する前に、それらをサーバー インスタンスに手動で読み込む必要があります。 追加のフィルターのインストールの詳細については、「 登録済みのフィルターおよびワード ブレーカーの表示または変更」を参照してください。

既存のフルテキスト インデックスの型列を表示するには

参照

sys.fulltext_index_columns (Transact-SQL)
FILESTREAM と SQL Server のその他の機能との互換性