2010-07-23 6 views
2

Simple question, peut-être une réponse difficile. Nous utilisons CONTAINS mais lorsque les critères correspondent à des apostrophes (parce que ce sont des noms de routes français), ils ne correspondent évidemment pas. Ainsi, par exemple, la recherche de "Lislet" lorsque la base de données contient "L'islet" ne donne rien. J'ai étudié la possibilité d'utiliser des dictionnaires et des thésaurus (fonctions SQL) mais, malheureusement, ni l'un ni l'autre. Les thésaurus semblaient très prometteurs, mais après avoir été testés dans notre environnement, il est devenu évident qu'ils ne supportaient pas les apostrophes, ce qui est une grande honte car cela aurait fonctionné parfaitement.Ignorer Apostrophes dans Contient

La seule autre chose que nous pensons faire est de créer une vue entièrement indexée qui supprime les apostrophes.

D'autres idées brillantes?

+0

Avez-vous déjà essayé de remplacer une chaîne et d'utiliser QUOTED_IDENTIFIER OFF? – JNK

+0

Ma phrase "La seule autre chose que nous pensons faire est de créer une vue entièrement indexée qui supprime les apostrophes" indique déjà cela. Vous ne devriez pas supprimer les apostrophes de la table sous-jacente, car ce n'est pas une représentation exacte des données réelles. – Kezzer

Répondre

0

Avez-vous consulté le catalogue de texte intégral pour votre base de données? Il y a une option de sensibilité Accent. Vous pouvez sélectionner Sensible ou Insensible. Je pense que vous voulez que ce soit réglé sur Insensible, de sorte que les apostrophes sont ignorés.

+0

Nous l'avons déjà fait directement dans SQL, vous pouvez le définir sur LATIN_GENERAL_CI_AI, mais c'est quelque chose de différent. Accent insensible est pour les lettres avec des accents sur eux, apostrophes! = Accents. – Kezzer

Questions connexes