IBM Books
(C) IBM Corp. 2000

Net Search Extender 管理およびユーザーズ・ガイド

DB2EXT.TEXTSEARCH (ストアード・プロシージャー検索用)

関数の構文

db2ext.TextSearch(
 
        IN      query                   VARCHAR(4096),
        IN      indexSchema             VARCHAR(128),
        IN      indexName               VARCHAR(128),
        IN      resultFirstRow          INTEGER,
        IN      resultNumberRows        INTEGER,
        IN      scoringFlag             INTEGER,
        IN      searchTermCountsFlag    INTEGER,
        OUT     searchTermCounts        VARCHAR(4096),
        OUT     totalNumberOfResults    INTEGER )

関数パラメーター

入力パラメーターを以下に示します。

Query
詳しくは、検索引き数の構文を参照してください。

indexSchema, indexName
検索する索引の識別。 CREATE INDEXを参照してください。

resultFirstrow
照会結果リストは、部分的に戻されます。パラメーターは、照会結果リストのどの行が、ストアード・プロシージャーの結果セットに 最初に書き込まれるかを記述します。照会結果リストの最初の行は、番号 0 で識別されます。

resultNumberRows
このパラメーターは、照会結果リストのうちの何行がストアード・プロシージャーの結果セットに 書き込まれるかを記述します。

これを、照会結果リストの最大サイズを判別する、照会の "result limit" 式と混同してはなりません。

値は 0 以上でなければなりません。0 の場合は、すべての結果を戻す必要のあることを意味します。

大きな結果セットを要求する場合は、一時ユーザー表スペースを使用可能にしてください。 使用できるものがない場合は、表スペースを作成してください。 以下の例は、UNIX プラットフォーム上で表スペースを作成しています。

db2 "create user temporary tablespace tempts managed by system
            using ('/work/tempts.ts')"

scoringFlag
0 は、スコアがないことを意味し、1 はスコアがあることを意味します。 スコアリングが要求されている場合に、 追加の列に値の高い順でスコア値が入れられて戻されます。

searchTermCountsFlag
このパラメーターは searchTermCounts 処理を制御します。 searchTermCountsFlag が 0 のときは、searchTermCounts は計算されません。

関数パラメーター

出力パラメーターを以下に示します。

searchTermCounts
索引内の検索項目照会ごとの出現数。これらのカウントは、照会の検索項目と同じ順序でブランクで区切られたリストとして戻されます。

詳細については、searchTermCountsFlag を参照してください。

totalNumberOfResults
照会結果リストで検出された結果の合計数。

また、STOP SEARCH AFTER、 または RESULT LIMITscoringFlag 構文とともに照会で使用する場合は、 この数がすでに信頼できなくなっていることに注意してください。

使用法

ストアード・プロシージャーによって戻された結果セットの列は、DB2TEXT CREATE INDEX コマンドの CACHE TABLE オプション により表示されます。scoringFlag=1 の場合は、タイプがダブルの列が追加されます。 この列には、SCORE 値が入っています。

最初の照会と同じストリングが指定されている 2 番目の照会のパフォーマンスを向上させるには、 以下のオプションを使用します。 ただし、totalNumberOfResults が不要な別のカーソル・ウィンドウで作業しなければならないことに注意してください。

検索のために適切なノードと接続するには、 DB2NODE 環境変数を設定する必要があるかもしれません。

UNIX の場合には、次のコマンドを使用してください。

export DB2NODE=<no>

すべての物理ノードの時刻が同期していることが重要であることに注意してください。

Windows の場合には、次のコマンドを実行します。

set DB2NODE= <no>

インスタンス所有者 ID と異なる fenced ユーザー ID では、 パーティション・データベースを扱う作業ができません。


[ ページのトップ | 前ページ | 次ページ | 目次 | 索引 ]