Item Finder サンプル

更新 : 2005 年 12 月 5 日

ItemFinder サンプルでは、データベース アプリケーションに検索機能を実装するテクニックを示します。AdventureWorks サンプル データベースと Microsoft SQL Server 2005 のフルテキスト検索機能により、ItemFinder を使用して、xml として格納されているレジュメと製品情報、バイナリ ラージ オブジェクト (BLOB) として格納されているドキュメントを検索することができます。このサンプル アプリケーションでは、以下のことが示されます。

  • ページングとキャッシュなどの高度なテクニック
  • 機能強化された多言語機能や xml データ型の実装など、フルテキスト検索の新規機能

既定の場所は C:\Program Files\Microsoft SQL Server\90\Samples\Engine\Full Text Search\ItemFinder です。

言語

Transact-SQL

機能

前提条件

このサンプルを実行する前に、次のソフトウェアがインストールされていることを確認してください。

サンプルのビルド

強力な名前のキー ファイルをまだ作成していない場合は、次の指示に従ってキー ファイルを生成してください。

厳密な名前のキー ファイルを生成するには

  1. Microsoft Visual Studio 2005 コマンド プロンプトを開きます。[スタート] メニューの [すべてのプログラム] をポイントし、[Microsoft .NET Framework SDK 2.0] をポイントします。次に、[SDK コマンド プロンプト] をクリックします。

    -- または --

    Microsoft .NET Framework コマンド プロンプトを開きます。[スタート] メニューの [すべてのプログラム] をポイントし、[Microsoft .NET Framework SDK 2.0] をポイントします。次に、[SDK コマンド プロンプト] をクリックします。

  2. ディレクトリの移動コマンド (CD) を使用して、コマンド プロンプト ウィンドウの現在のディレクトリから、サンプルがインストールされているフォルダに移動します。

    ms160844.note(ja-jp,SQL.90).gif注 :
    サンプルが配置されているフォルダを調べるには、[スタート] ボタンをクリックし、[すべてのプログラム]、[Microsoft SQL Server]、[マニュアルとチュートリアル] の順にポイントして、[サンプル ディレクトリ] をクリックします。既定のインストール場所を使用している場合、サンプルは <system_drive>:\Program Files\Microsoft SQL Server\100\Samples にあります。
  3. コマンド プロンプトで、次のコマンドを実行してキー ファイルを生成します。

    sn -k SampleKey.snk

    ms160844.note(ja-jp,SQL.90).gif重要 :
    厳密な名前のキー ペアの詳細については、MSDN の .NET Development Center にある「Security Briefs: Strong Names and Security in the .NET Framework」を参照してください。

サンプルをビルドするには、次の手順を行う必要があります。

手順 1: スクリプトの読み込みと実行

  1. SQL Server Management Studio で Scripts\install.sql スクリプトを読み込んで実行し、フルテキスト インデックスの設定と次のストアド プロシージャの作成を行います。

    • usp_SearchResumes
    • usp_SearchProducts
    • usp_SearchDocuments
    • usp_AddDocument

手順 2: アプリケーションのビルド

  1. Microsoft Visual Studio 2005 を使用してアプリケーションをビルドするか、.NET Framework コマンド プロンプト ウィンドウで次のように入力します。

msbuild /nologo /verbosity:quiet /property:Configuration=Debug CS\ItemFinder.sln

サンプルの実行

サンプルを実行するには、次の手順を行う必要があります。

手順 1: サンプルの実行

  1. bin\Release\ItemFinder.exe (または、bin\Debug\ItemFinder.exe) を実行します。

コメント

ItemFinder サンプル アプリケーションにより、レジュメ、製品情報、およびドキュメントを検索できるユーザー インターフェイスが提供されます。サンプルを使用して、Document テーブルにドキュメントを追加することもできます。

サンプル データは、さまざまな言語と形式で利用することができます。ドロップダウン リストから、ライブラリ (レジュメ、製品、またはドキュメント)、言語 (フルテキスト検索でサポートされているいずれかの言語)、最大結果数、および検索の種類 (CONTAINS、または FREETEXT) を選択できます。

ItemFinder を使って次のタスクを実行します。

検索条件の選択

テキスト ボックスに検索条件を入力し、[Go] をクリックしてクエリを実行します。

検索の種類で CONTAINS を選択した場合、ItemFinder は contains_search_condition 構文を使用します。たとえば、テキスト ボックスに「"rear" NEAR "reflector"」と入力することにより、近接演算子 NEAR を使用して "rear reflector" を検索することができます。contains_search_condition に何を使用する場合でも、入力する検索テキストは必ず二重引用符で囲みます ("検索テキスト")。詳細については、「CONTAINS (Transact-SQL)」を参照してください。

また、検索の種類で FREETEXT を選択した場合、ItemFinder は freetext_search_condition 構文を使用します。たとえば、上の検索条件 "rear reflector" を使用して、テキスト ボックスに「rear reflector」と入力します。ただし、CONTAINS とは異なり、検索テキストを二重引用符で囲みません。詳細については、「FREETEXT (Transact-SQL)」を参照してください。

大量の検索結果の参照

検索結果が ListView 要素の 1 ページに表示しきれない場合、最初の結果ページのみが表示されます。シンプルで効率的なインメモリ キャッシュでは、検索条件と既に取得済みのデータに一致したキー値と順位値が格納されます。

結果ページを前後にスクロールするには、[Last][Next] を使用します。

キャッシュをクリアするには、[Clear Results] をクリックし、新規検索を実行するか、アプリケーションを閉じます。

データベース サーバーのホスト名の変更

使用するデータベース サーバーのホスト名は app.config file に格納されています。

ホスト名を変更するには

  1. [Edit] をクリックし、[Database Settings] をクリックします。
  2. app.config ファイルを直接編集します。

Document テーブルへの、サポートされているドキュメントの種類の追加

ドキュメントの種類を追加するには、[File] をクリックし、[Add New File] をクリックします。

[Add New File] メニューを使用して、次のタスクを実行することもできます。

  • ファイル名の指定
  • ファイル システムへのファイルの配置
  • ファイルの種類の指定
  • ファイルの短い説明の格納

サンプルでのヘルプの表示

サンプルについての情報を表示するには、[Help] メニューをクリックし、[About] を選択します。

参照

その他の技術情報

フルテキスト検索の機能強化
CREATE FULLTEXT CATALOG (Transact-SQL)
ALTER FULLTEXT CATALOG (Transact-SQL)
DROP FULLTEXT CATALOG (Transact-SQL)
CREATE FULLTEXT INDEX (Transact-SQL)
ALTER FULLTEXT INDEX (Transact-SQL)
DROP FULLTEXT INDEX (Transact-SQL)
CONTAINS (Transact-SQL)
CONTAINSTABLE (Transact-SQL)
FREETEXT (Transact-SQL)
FREETEXTTABLE (Transact-SQL)

ヘルプおよび情報

SQL Server 2005 の参考資料の入手

変更履歴

リリース 履歴

2005 年 12 月 5 日

変更した内容 :
  • キー ファイルの名前や場所など、キー ファイルを生成する手順を変更しました。