Share via


sp_help_fulltext_system_components (Transact-SQL)

適用対象:SQL ServerAzure Synapse Analytics

登録済みのワード ブレーカー、フィルター、およびプロトコル ハンドラーの情報を返します。 sp_help_fulltext_system_components は、指定されたコンポーネントを使用するデータベースとフルテキスト カタログの識別子の一覧も返します。

Transact-SQL 構文表記規則

構文

sp_help_fulltext_system_components
    [ { 'all' | [ @component_type = ] N'component_type' } ]
    [ , [ @param = ] N'param' ]
[ ; ]

引数

'all'

すべてのフルテキスト コンポーネントについての情報を返します。

[ @component_type = ] N'component_type'

コンポーネントの種類を指定します。 @component_typeは sysname であり、次のいずれかのオプションを使用できます。

  • wordbreaker
  • filter
  • protocol handler
  • fullpath

完全なパスが指定されている場合は、 コンポーネント DLL への完全なパスを使用して@param も指定する必要があります。そうしないと、エラー メッセージが返されます。

[ @param = ] N'param'

@paramは sysname で、既定値は NULL. コンポーネントの種類に応じて、 @param は次のいずれかのオプションです。

  • ロケール識別子 (LCID)
  • プレフィックス付きの . ファイル拡張子
  • プロトコル ハンドラーの完全なコンポーネント名
  • コンポーネント DLL への完全パス

リターン コードの値

0 (成功) または 1 (失敗)。

結果セット

システム コンポーネントについて、次の結果セットが返されます。

列名 データ型 説明
componenttype sysname コンポーネントの種類。 次のいずれかのオプション:

-フィルター
- プロトコル ハンドラー
- ワードブレーカー
componentname sysname コンポーネントの名前
clsid uniqueidentifier コンポーネントのクラス識別子
fullpath nvarchar (256) コンポーネントの場所へのパス。

NULL = serveradmin 固定サーバー ロールのメンバーではない呼び出し元
version nvarchar(30) コンポーネントのバージョン
manufacturer sysname コンポーネントの製造元の名前

次の結果セットは、@component_typeを使用する 1 つ以上のフルテキスト カタログが存在する場合にのみ返されます。

列名 データ型 説明
dbid int データベースの ID
ftcatid int フルテキスト カタログの ID

アクセス許可

パブリック ロールのメンバーシップが必要です。ただし、ユーザーは VIEW DEFINITION 権限を持つフルテキスト カタログに関する情報のみを表示できます。 列の値を表示できるのは、 serveradmin 固定サーバー ロールの fullpath メンバーだけです。

解説

この方法は、アップグレードの準備をする際に特に重要です。 特定のデータベース内でストアド プロシージャを実行し、出力を使用して、特定のカタログがアップグレードの影響を受けるかどうかを判断します。

A. すべてのフルテキスト システム コンポーネントを一覧表示する

次の例では、サーバー インスタンスに登録されているすべてのフルテキスト システム コンポーネントを一覧表示します。

EXEC sp_help_fulltext_system_components 'all';
GO

B. ワード ブレーカーを一覧表示する

次の例では、サービス インスタンスに登録されているすべてのワード ブレーカーを一覧表示します。

EXEC sp_help_fulltext_system_components 'wordbreaker';
GO

C: 特定のワード ブレーカーが登録されているかどうかを確認する

次の例では、トルコ語 (LCID = 1055) のワード ブレーカーがシステムにインストールされ、サービス インスタンスに登録されている場合の一覧を示します。 この例では、パラメーター名、@component_type、および@param指定します。

EXEC sp_help_fulltext_system_components @component_type = 'wordbreaker', @param = 1055;
GO

既定では、このワード ブレーカーはインストールされていないため、結果セットは空です。

D. 特定のフィルターが登録されているかどうかを確認する

次の例では、コンポーネントがシステムに手動でインストールされ、サーバー インスタンスに登録されている場合に、コンポーネントのフィルター .xdoc を一覧表示します。

EXEC sp_help_fulltext_system_components 'filter', '.xdoc';
GO

既定では、このフィルターはインストールされていないため、結果セットは空です。

E. 特定の DLL ファイルを一覧表示する

次の例では、既定でインストールされている特定の .ddl ファイル nlhtml.dll を一覧表示します。

EXEC sp_help_fulltext_system_components 'fullpath',
   'C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Binn\nlhtml.dll';
GO