IBM Books
(C) IBM Corp. 2003

DB2 Net Search Extender Verwaltung und Programmierung


Einfaches Beispiel mit der skalaren SQL-Suchfunktion

Führen Sie folgende Schritte im DB2 Net Search Extender-Beispiel aus:

  1. Erstellen einer Datenbank.
  2. Aktivieren einer Datenbank für die Textsuche.
  3. Erstellen einer Tabelle.
  4. Erstellen eines Volltextindexes.
  5. Laden der Beispieldaten.
  6. Synchronisieren des Textindexes.
  7. Ausführen von Suchoperationen mit dem Textindex.

Sie können die Beispielbefehle in der Befehlszeile des Betriebssystems unter Verwendung einer vorhandenen Datenbank ausführen. Für die folgenden Beispiele lautet der Name der Datenbank sample.

Erstellen einer Datenbank
Sie können in DB2 mit Hilfe des folgenden Befehls eine Datenbank erstellen:
db2 "create database sample"

Aktivieren einer Datenbank für die Textsuche
Sie können DB2 Net Search Extender-Befehle auf die gleiche Weise wie DB2-Befehle über die Befehlszeile des Betriebssystems ausführen. Verwenden Sie beispielsweise folgenden Befehl zum Starten von Net Search Extender-Exemplarservices:
db2text "START"

Dieser Befehl bereitet die Datenbank für die Verwendung mit DB2 Net Search Extender vor:

db2text "ENABLE DATABASE FOR TEXT CONNECT TO sample"

Sie brauchen diesen Schritt nur einmal für jede Datenbank auszuführen.

Erstellen einer Tabelle
db2 "CREATE TABLE books (isbn VARCHAR(18) not null PRIMARY KEY,
      author VARCHAR(30), story LONG VARCHAR, year INTEGER)"

Dieser DB2-Befehl erstellt eine Tabelle namens books. Diese enthält Spalten für author (Autor), story (Geschichte), isbn number (ISBN) und year (Erscheinungsjahr des Buches).

Erstellen eines Volltextindex
db2text "CREATE INDEX db2ext.myTextIndex FOR TEXT ON books (story)
        CONNECT TO sample"

Dieser Befehl erstellt einen Volltextindex für die Spalte story. Der Name des Textindexes lautet db2ext.myTextIndex.

Laden der Beispieldaten
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)"

Diese Befehle laden die Informationen für isbn, author, story und publishing year für diese Bücher in die Tabelle.

Synchronisieren des Textindex
Geben Sie folgenden Befehl ein, um den Textindex mit den Daten aus der Tabelle sample zu aktualisieren:
db2text "UPDATE INDEX db2ext.myTextIndex FOR TEXT CONNECT TO sample"

Suchen mit dem Textindex
Verwenden Sie zum Durchsuchen des Textindexes die folgende skalare Suchfunktion CONTAINS:
db2 "SELECT author, story FROM books WHERE CONTAINS
    (story, '\"cat\"') = 1 AND YEAR >= 2000"
Anmerkung

Abhängig von der Betriebssystemshell, die Sie verwenden, müssen Sie möglicherweise unterschiedliche Escapezeichen vor den doppelten Anführungszeichen verwenden, die den Textsuchausdruck einschließen. Das oben dargestellte Beispiel verwendet als Escapezeichen "\".

Diese Abfrage sucht nach allen Büchern zum Begriff cat (Katze), die im Jahr 2000 oder später erschienen sind. Die Abfrage gibt die folgende Ergebnistabelle zurück:

AUTHOR    STORY
Mike      The cat hunts some mice.

Weitere unterstützte Funktionen sind SCORE und NUMBEROFMATCHES. SCORE gibt einen Bezugswert darüber zurück, wie gut ein gefundenes Dokument durch den Suchbegriff beschrieben wird. NUMBEROFMATCHES gibt zurück, wie viele Übereinstimmungen mit den Suchbegriffen in einem gefundenen Dokument enthalten sind.


[ Seitenanfang | Vorherige Seite | Nächste Seite | Inhaltsverzeichnis | Index ]