Mots vides et listes de mots vides

Pour éviter que l'index de texte intégral ne devienne encombré, SQL Server utilise un mécanisme qui ignore les chaînes courantes qui ne sont d'aucune utilité pour la recherche. Ces chaînes ignorées sont appelées des mots vides. Pendant la création d'un index, le moteur de texte intégral omet les mots vides de l'index de texte intégral. Cela signifie que les requêtes de texte intégral ne rechercheront pas les mots vides.

Important

Les mots parasites SQL Server 2005 ont été remplacés par les mots vides. Lorsqu'une base de données est mise à niveau vers SQL Server 2008 à partir d'une version précédente, les fichiers de mots parasites ne sont plus utilisés dans SQL Server 2008. Toutefois, les fichiers de mots parasites sont stockés dans le dossier FTDATA\ FTNoiseThesaurusBak, et vous pouvez les utiliser ultérieurement lors de la mise à jour ou de la génération des listes de mots vides SQL Server 2008 correspondantes. Pour plus d'informations sur la mise à niveau de fichiers de mots vides en listes de mots vides, consultez Mise à niveau de la fonction de recherche en texte intégral.

Un mot vide peut être un mot ayant une signification dans une langue spécifique ou être un jeton qui n'a pas de signification linguistique. Par exemple, en français, les mots tels que « un », « et », « est » ou « le » sont écartés de l'index de texte intégral, car ils sont inutiles dans le cadre d'une recherche.

Bien qu'il ignore l'inclusion des mots vides, l'index de texte intégral prend en considération leur position. Prenons l'exemple de l'expression suivante : « Instructions are applicable to these Adventure Works Cycles models ». Le tableau suivant décrit la position des mots dans l'expression :

Mot

Position

Instructions

1

are

2

applicable

3

to

4

these

5

Adventure

6

Works

7

Cycles

8

models

9

Les mots vides « are », « to » et « these » situés aux positions 2, 4 et 5 sont écartés de l'index de recherche en texte intégral. Cependant, les informations relatives à leur position sont conservées, sans affecter la position des autres mots de l'expression.

Listes de mots vides

Dans SQL Server 2008, les mots vides sont gérés dans des bases de données à l'aide d'objets appelés des listes de mots vides. Une liste de mots vides est une liste qui, associée à un index de texte intégral, s'applique aux requêtes de texte intégral sur cet index.

Création d'une liste de mots vides

Vous pouvez créer une liste de mots vides de l'une des façons suivantes :

  • Utiliser la liste de mots vides fournie par le système dans la base de données. SQL Server est fourni avec une liste de mots vides système qui contient les mots vides les plus couramment utilisés pour chaque langue prise en charge, c'est-à-dire pour chaque langue associée aux analyseurs lexicaux fournis par défaut. La liste de mots vides système contient les mots vides courants pour toutes les langues prises en charge. Vous pouvez copier la liste de mots vides système, et personnaliser cette liste en ajoutant et en supprimant des mots vides.

    La liste de mots vides système est installée dans la base de données Resource.

  • Créer votre propre liste de mots vides, puis en lui ajoutant des mots vides pour chaque langue que vous spécifiez. Vous pouvez également supprimer des mots vides de votre liste de mots vides si nécessaire.

  • Télécharger une liste de mots vides personnalisée depuis toute autre base de données dans l'instance de serveur actuelle, puis ajouter et supprimer des mots vides au besoin.

Important

Les instructions CREATE FULLTEXT STOPLIST, ALTER FULLTEXT STOPLIST et DROP FULLTEXT STOPLIST sont uniquement prises en charge pour un niveau de compatibilité égal à 100. Elles ne le sont pas avec un niveau de compatibilité égal à 80 ou 90. Toutefois, quel que soit le niveau de compatibilité, la liste de mots vides système est automatiquement associée aux nouveaux index de recherche en texte intégral.

Pour créer une liste de mots vides

Pour ajouter ou supprimer des mots vides dans une liste de mots vides

Pour supprimer une liste de mots vides

Utiliser une liste de mots vides dans les requêtes

Pour utiliser une liste de mots vides dans des requêtes, vous devez l'associer à un index de texte intégral. Vous pouvez joindre une liste de mots vides à un index de texte intégral lorsque vous créez l'index, ou vous pouvez modifier ultérieurement l'index pour ajouter une liste de mots vides.

Pour créer un index de texte intégral et lui associer une liste de mots vides

Pour associer ou dissocier une liste de mots vides avec un index de recherche en texte intégral existant

Pour supprimer un message d'erreur si des mots vides provoquent l'échec d'une opération booléenne sur une requête de texte intégral

Consultation des listes de mots vides et des métadonnées de liste de mots vides

Pour afficher tous les mots vides d'une liste de mots vides

Pour obtenir des informations sur toutes les listes de mots vides dans la base de données actuelle

Pour consulter le résultat de la segmentation du texte en unités lexicales d'une combinaison d'analyseur lexical, dictionnaire des synonymes et liste de mots vides