DB2 Net Search Extender の例では、以下のステップを使用します。
既存データベースを使用して、 オペレーティング・システムのコマンド行でサンプル・コマンドを発行することができます。 以下の例では、データベース名を sample とします。
db2 "create database sample"
db2text "START"
DB2 Net Search Extender で使用するデータベースを作成するには、 以下のコマンドを使用します。
db2text "ENABLE DATABASE FOR TEXT CONNECT TO sample"
このステップは、それぞれのデータベースで 1 回だけ実行します。
db2 "CREATE TABLE books (isbn VARCHAR(18) not null PRIMARY KEY, author VARCHAR(30), story LONG VARCHAR, year INTEGER)"
この DB2 コマンドによって、books という名前の表が作成されます。 この表には、author、story、isbn 番号、 および本が出版された year に関する列が含まれます。
db2text "CREATE INDEX db2ext.myTextIndex FOR TEXT ON books (story) CONNECT TO sample"
このコマンドで、列 story のフルテキスト索引が作成されます。 テキスト索引の名前は db2ext.myTextIndex です。
db2 "INSERT INTO books VALUES ('0-13-086755-1','John', 'A man was running down the street.',2001)" db2 "INSERT INTO books VALUES ('0-13-086755-2','Mike', 'The cat hunts some mice.', 2000)" db2 "INSERT INTO books VALUES ('0-13-086755-3','Peter', 'Some men were standing beside the table.',1999)"
これらのコマンドで、3 冊の本の isbn、author、story、 および publishing year が表にロードされます。
db2text "UPDATE INDEX db2ext.myTextIndex FOR TEXT CONNECT TO sample"
db2 "SELECT author, story FROM books WHERE CONTAINS (story, '¥"cat¥"') = 1 AND YEAR >= 2000"
注 |
---|
使用するオペレーティング・システム・シェルによっては、 テキスト検索句を囲む二重引用符の前に、 別のエスケープ文字が必要な場合があります。 上記の例ではエスケープ文字として「¥」を使用しています。 |
この照会では、2000 年以降の、cat という語に関するすべての本が検索されます。 照会によって、次の結果表が戻されます。
AUTHOR STORY Mike The cat hunts some mice.
他に、SCORE および NUMBEROFMATCHES 関数がサポートされています。 SCORE は、 見つかった文書を検索引き数がどの程度正確に表現しているかを示す標識を戻します。 NUMBEROFMATCHES は、 結果の文書内にある照会語のマッチ回数を戻します。