Comment obtenir autour de 4000 caractères de limitation de text_query dans Oracle CONTIENT de l'opérateur?

Dans Oracle, le texte intégral de la syntaxe de recherche de Contient de l'opérateur est:

 CONTAINS(
          [schema.]column,
          text_query    VARCHAR2
          [,label       NUMBER]) RETURN NUMBER;

ce qui signifie que le text_query ne peut pas être plus de 4000 caractères ou une erreur se produit. J'ai à plusieurs reprises ont text_query plus de 4000 caractères dans de nombreux cas. Comment voulez-vous, comme un Oracle expert, suggèrent pour contourner cette limitation, si possible?

Pour clarifier la situation dans laquelle 4000 est facilement accessible, c'est que si vous combinez plusieurs Contient Des Opérateurs De Requête pour construire votre text_query, il est tout à fait possible de dépasser ces 4000 caractères de limitation.

  • La limite d'un VARCHAR2 colonne de la table est de 4000 caractères, mais la limite d'un VARCHAR2 variable en PL/SQL est 32 767 caractères. Êtes-vous sûr que le texte de la requête dans une mention "CONTIENT" est limité à 4000 et pas 32767?
  • CONTAINS() est une fonction SQL, de sorte que le SQL limite s'applique.
  • Merci pour la clarification, je n'ai jamais réellement utilisé Oracle de l'index de Texte, donc je n'étais pas sûr
InformationsquelleAutor hko19 | 2010-06-25