次の方法で共有


SQL Server 2005 におけるフルテキスト検索の動作の変更

ここでは、以前のリリースの Microsoft SQL Server から変更されたフルテキスト検索機能の動作について説明します。

動作の変更

次の表は、変更された動作を示しています。

動作の変更

説明

マスタ マージ

SQL Server 2000 では、午前 0 時に、または 500,000 個のドキュメントにフルテキスト インデックスが設定されると、マスタ マージが開始されました。

SQL Server 2005 では、全作成の終了時に、さらにフルテキスト インデックス ファイル数の内部しきい値に達したときにも、マスタ マージが開始されます。

500,000 個のドキュメントにフルテキスト インデックスが設定されたときにもマスタ マージが開始されます。これは SQL Server 2000 と同じです。

SQL Server 2005 では、データ定義言語を使用してマスタ マージを開始することもできます。

MSSearch サービス

SQL Server 2000 では、フルテキスト検索に MSSearch サービスがフルテキスト インデックスおよび検索エンジンとして使用されていました。SQL Server 2005 では、このサービスの名前が MSFTESQL サービスに変更されています。MSFTESQL エンジンは、MSSearch テクノロジに基づいて構築されています。

フルテキスト検索に関連するストアド プロシージャ

SQL Server 2005 ではフルテキスト検索に関連するストアド プロシージャが新しいフルテキスト データ定義言語 (DDL) を使用するように書き直されているため、一部のエラーによりステートメント レベルのエラーが発生します。

次のエラーによってステートメント レベルのエラーが発生します。その他のエラーはバッチ レベルのエラーです。

  • 権限チェック エラー。
  • 明示的トランザクション チェック エラー。明示的ユーザー トランザクション内ではフルテキスト ストアド プロシージャを呼び出すことができません。
  • mastertemp、または model データベースでのフルテキスト関連アクションの実行。
  • データベースが読み取り専用でないことのチェック エラー。
  • データベースでフルテキスト検索が無効。
  • パラメータの検証。
    • カタログ名が見つかりません。
    • テーブル名が存在しないか、テーブルがフルテキスト インデックスに不適切です。
    • テーブルの列名が無効です。
    • データベース名、テーブル名などのパラメータが NULL です。

フルテキスト カタログ クリーンアップの機能

SQL Server 2005 では、sp_fulltext_service クリーンアップを実行できません。

ノイズ語

SQL Server 2005 では、フルテキスト検索の述語または関数を使用するクエリにノイズ語が含まれていて、transform noise words 構成オプションがオンになっていない場合、警告が発行され、行が返されません。このオプションの詳細については、「transform noise words オプション」を参照してください。

順位がゼロである行が返される

SQL Server 2000 では、順位がゼロである行は返されませんでした。SQL Server 2005 では、これらの行が結果セットに追加されます。そのため、ストアド プロシージャおよびその他のクエリの結果に影響する可能性があります。

sp_fulltext_database の実行

フルテキスト インデックス作成が既に有効であるユーザー データベースに対して sp_fulltext_database (enable) を実行した場合、SQL Server 2005 では何の処理も行われません。

ms143272.note(ja-jp,SQL.90).gifメモ :

既定では、ユーザー データベースのフルテキスト インデックス作成が有効になっています。

参照

概念

SQL Server 2005 におけるフルテキスト検索の重大な変更

その他の技術情報

フルテキスト検索における旧バージョンとの互換性
フルテキスト検索

ヘルプおよび情報

SQL Server 2005 の参考資料の入手