IBM Books
(C) IBM Corp. 2000

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

Création d'un index de texte sur un type de données non pris en charge

Pour créer un index, les colonnes de texte doivent être de l'un des types de données suivants :

Si les documents se trouvent dans une colonne d'un autre type, UDT (type défini par l'utilisateur) par exemple, vous devez fournir une fonction qui prend le type utilisateur comme entrée et qui fournit l'un des types mentionnés ci-dessus comme type de sortie.

Spécifiez le nom de cette fonction de transformation. Pour plus d'informations, reportez-vous à la section CREATE INDEX.

Exemple : vous avez l'intention de stocker un texte compressé dans une table.

  1. Créez un type défini par l'utilisateur (UDT) pour le texte dans une session SQL interactive :
    db2 "CREATE DISTINCT TYPE COMPRESSED_TEXT AS CLOB(1M)"
    
  2. Créez une table et insérez le texte dedans :
    db2 "CREATE TABLE UDTTABLE (author VARCHAR(50) not null,
                                  text COMPRESSED_TEXT, primary key (author))"
    db2 "INSERT ..."
    
  3. Créez une fonction UDF, par exemple uncompress. Elle reçoit une valeur de type COMPRESSED_TEXT et renvoie le texte non compressé correspondant sous forme de valeur CLOB(10M) par exemple.
  4. Créez l'index de texte de la manière suivante pour spécifier la fonction UDF uncompress :
    db2text "CREATE INDEX UDTINDEX for text ON UDTTABLE
                                   (uncompress(text))
                                   ..."
    


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