XML Extender Verwaltung und Programmierung

Text Extender für eine strukturelle Textsuche verwenden

Beim Durchsuchen der XML-Dokumentstruktur sucht der XML Extender Element- und Attributwerte, die in allgemeine Datentypen umgesetzt werden; er sucht jedoch nicht nach Text. Sie können den DB2 UDB Text Extender für eine strukturelle Suche oder eine Volltextsuche nach einer für XML aktivierten Spalte verwenden. Der Text Extender unterstützt die XML-Dokumentsuche in DB2 UDB Version 6.1 und höheren Versionen.

Strukturelle Textsuche
Sucht nach Textzeichenfolgen, die auf der Baumstruktur des XML-Dokuments aufbauen. Wenn Sie beispielsweise die Dokumentstruktur /Order/Customer/Name haben und nach der Zeichenfolge "IBM" innerhalb des Unterelements <Customer> suchen wollen, können Sie eine strukturelle Textsuche verwenden. Das Dokument kann auch die Zeichenfolge IBM in einem Unterelement <Comment> oder als Name eines Produktteils enthalten. Bei der strukturellen Suche wird nur in den angegebenen Elementen nach der Zeichenfolge gesucht. In diesem Beispiel werden nur die Dokumente gefunden, die IBM im Unterelement </Order/Customer/Name> enthalten; Dokumente, die die Zeichenfolge IBM in anderen Elementen, nicht jedoch in </Order/Customer/Name> enthalten, werden nicht zurückgegeben.

Volltextsuche
Sucht nach Textzeichenfolgen überall in der Dokumentstruktur, ohne Rücksicht auf Elemente oder Attribute. Im vorigen Beispiel werden alle Dokumente zurückgegeben, die die Zeichenfolge IBM enthalten, unabhängig davon, wo diese Zeichenfolge vorkommt.

Zur Verwendung der Suche mit dem Text Extender müssen Sie den DB2 Text Extender installieren und Ihre Datenbank und Ihre Tabellen wie nachfolgend beschrieben aktivieren. Eine Beschreibung der Vorgehensweise bei der Suche mit dem Text Extender finden Sie in dem Kapitel zum Suchen mit den UDFs des Text Extender im Handbuch DB2 Universal Database Text Extender Verwaltung und Programmierung.

Eine XML-Spalte für den Text Extender aktivieren

Angenommen, Sie haben eine für XML aktivierte Datenbank, führen Sie die folgenden Schritte aus, um den Text Extender für das Durchsuchen des Inhalts einer für XML aktivierten Spalte zu aktivieren. Als Beispiel dienen eine Datenbank mit dem Namen SALES_DB, die Tabelle mit dem Namen ORDER und die XML-Spalten XVARCHAR und XCLOB:

  1. Schlagen Sie in der Datei install.txt auf der Extenders-CD nach, wie der Text Extender installiert werden muß.
  2. Geben Sie den Befehl txstart an einer der folgenden Stellen ein:
  3. Öffnen Sie das Befehlszeilenfenster des Text Extender. Bei diesem Schritt wird davon ausgegangen, daß Sie eine Datenbank mit dem Namen SALES_DB und eine Tabelle mit dem Namen ORDER haben, die die beiden XML-Spalten XVARCHAR und XCLOB enthält. Eventuell müssen Sie die Beispielprogramme unter dxx\samples\c ausführen.
  4. Stellen Sie die Verbindung zur Datenbank her. Geben Sie bei der Eingabeaufforderung db2tx folgendes ein:
    'connect to SALES_DB' 
    
  5. Aktivieren Sie die Datenbank für den Text Extender.

    Geben Sie bei der Eingabeaufforderung db2tx folgendes ein:

    'enable database'
    
  6. Aktivieren Sie die Spalten in der XML-Tabelle für den Text Extender. Definieren Sie die Datentypen des XML-Dokuments, der Sprache, der Codepages und anderer Informationen zu der Spalte.
  7. Überprüfen Sie den Status des Index.
  8. Definieren Sie das XML-Dokumentmodell in einer Dokumentmodell-ini-Datei mit dem Namen desmodel.ini. Diese Datei befindet sich für UNIX in /db2tx/txins000 und für Windows NT in \instance\\db2tx\txins000; sie ist in einzelne Abschnitte einer Initialisierungsdatei untergliedert. Beispiel der Datei textmodel.ini:
    ;list of document models
    [MODELS]
    modelname=Order
     
    ; an 'Order' document model definition
    ; left side = section name identifier
    ; right side = section name tag
     
    [Order]
    Order = /Order
    Order/Customer/Name = /Order/Customer/Name
    Order/Customer/Email = /Order/Customer/Email
    Order/Part/@color = /Order/Part/@color
    Order/Part/Shipment/ShipMode = /Order/Part/Shipment/ShipMode
     
    

Mit dem Text Extender nach Text suchen

Die Suchfunktion des Text Extender funktioniert gut mit der strukturellen Dokumentsuche des XML Extender. Die empfohlene Methode ist das Erstellen einer Abfrage, die nach dem Dokumentelement oder den Attributen sucht und mit dem Text Extender den Elementinhalt oder die Attributwerte sucht.

Beispiel: Die folgenden Anweisungen suchen einen XML-Dokumenttext mit dem Text Extender. Geben Sie im DB2-Befehlsfenster folgendes ein:

'connect to SALES_DB'   
'select xvarchar from order where db2tx.contains(varcharhandle, 
	 'model Order section(Order/Customer/Name) "Motors"')=1'   
'select xclob from order where db2tx.contains(clobhandle, 
	 'model Order section(Order/Customer/Name) "Motors"')=1'

Die UDF Contains() des Text Extender führt eine Suche durch.

Dieses Beispiel enthält nicht alle Schritte, die zum Durchsuchen von Spaltendaten mit dem Text Extender erforderlich sind. Eine Beschreibung der Vorgehensweise bei der Suche mit dem Text Extender finden Sie in dem Kapitel zum Suchen mit den UDFs des Text Extender im Handbuch DB2 Universal Database Text Extender Verwaltung und Programmierung.


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