IBM Books
(C) IBM Corp. 2000

DB2 Extension Net Search - Guide d'administration et d'utilisation

DB2EXT.TEXTSEARCH (pour une recherche de procédure mémorisée)

Syntaxe de la fonction

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 ) 

Paramètres de fonction

Les paramètres suivants sont les paramètres d'entrée :

Query
Pour plus d'informations, reportez-vous au Chapitre 14, Syntaxe des arguments de recherche.

indexSchema, indexName
Identifient l'index dans lequel effectuer la recherche. Reportez-vous à la section CREATE INDEX.

resultFirstrow
La liste des résultats de la requête est renvoyée en plusieurs parties. Le paramètre indique la ligne de la liste des résultats de la requête devant être placée en premier dans l'ensemble des résultats de la procédure mémorisée. La première ligne de la liste des résultats de la requête est identifiée par le chiffre 0.

resultNumberRows
Ce paramètre indique le nombre de lignes de la liste des résultats de la requête à placer dans l'ensemble des résultats de la procédure mémorisée.

Il ne doit pas être confondu avec l'expression "result limit" dans la requête qui détermine la taille maximale de l'indicateur de la liste des résultats de la requête.

La valeur doit être supérieure ou égale à 0. 0 signifie que tous les résultats sont renvoyés.

Remarque

Si un ensemble de résultats plus grand est demandé, veillez à ce qu'un espace table utilisateur temporaire soit disponible. Si aucun espace table n'est disponible, créez-en un. L'exemple suivant crée un espace table sur une plateforme UNIX :

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

scoringFlag
0 signifie qu'il n'y a pas de score et 1 qu'il y en a. Si un score est demandé, une ligne supplémentaire portant la valeur du score est renvoyée.

searchTermCountsFlag
Ceci contrôle le traitement du nombre de termes recherchés. Si cet indicateur est égal à 0, le nombre n'est pas calculé.

Paramètres de fonction

Les paramètres suivants sont les paramètres de sortie :

searchTermCounts
Nombre d'occurrences de chaque requête de terme recherché dans l'index. Ces nombres sont renvoyés sous forme de liste, séparés par des espaces, dans l'ordre des termes recherchés dans la requête.

Pour plus d'informations, reportez-vous à searchTermCountsFlag.

totalNumberOfResults
Nombre total de résultats trouvés dans la liste des résultats de la requête.

Notez également que si vous utilisez STOP SEARCH AFTER ou RESULT LIMIT avec la syntaxe SCORE dans une requête, ce nombre n'est plus fiable.

Usage

Les colonnes de l'ensemble de résultats renvoyés par la procédure mémorisée sont données par l'option RESULT COLUMNS de la commande DB2TEXT CREATE INDEX. Si scoringFlag=1, alors une colonne de type DOUBLE est ajoutée. Celle-ci contient la valeur SCORE.

Les options suivantes permettent d'augmenter les performances d'une seconde requête avec la même chaîne que la première requête. Notez que ceci doit avoir lieu dans une autre fenêtre sans la valeur totalNumberOfResults requise :

Pour être sûr que vous vous connectez au bon noeud pour la recherche, il peut être nécessaire de définir la variable d'environnement DB2NODE.

Pour UNIX, utilisez la commande suivante :

export DB2NODE=<no>

Notez qu'il est important que tous les noeuds physiques ait un temps synchronisé.

Pour Windows, utilisez :

set DB2NODE= <no>
Remarque

Un ID utilisateur isolé, différent de l'ID propriétaire d'instance ne fonctionne pas avec des bases de données partitionnées.


[ Début de page | Page précédente | Page suivante | Table des matières | Index ]