CORRECTIF : Un problème de performances se produit lorsque vous exécutez une requête de texte intégral qui contient la clause «AND NOT» dans SQL Server 2008

Traductions disponibles Traductions disponibles
Numéro d'article: 970287 - Voir les produits auxquels s'applique cet article
Microsoft distribue les correctifs Microsoft SQL Server 2008 sous la forme d'un fichier téléchargeable unique. Les correctifs étant cumulatifs, chaque nouvelle version contient tous les correctifs et tous les correctifs de sécurité inclus avec la précédente SQL Server 2008 version du correctif.
Agrandir tout | Réduire tout

Sommaire

Symptômes

Dans Microsoft SQL Server 2008, une requête de texte intégral sur une grande table qui contient un grand nombre de lignes prend beaucoup plue de temps que dans SQL Server 2005. Ce problème se produit si les conditions suivantes sont remplies :
  • Vous définir un index de texte intégral sur la table.
  • La requête de texte intégral contient la clause ? AND NOT respectez. Par exemple, la requête contient la condition suivante :
    <Condition 1 > AND NOT < Condition 2 >

Cause

Ce problème se produit car le plan d'exécution pour la requête n'est pas optimisé. Dans l'exemple qui mentionne la section «Symptômes», la requête est exécutée comme deux requêtes séparées. La première requête s'exécute pour condition 1. La deuxième requête s'exécute pour condition 2. Dans SQL Server 2008, ces deux requêtes sont exécutées simultanément. Par conséquent, la deuxième requête s'exécute très lentement et génère un jeu de résultats volumineux. Ce plan d'exécution provoque un problème de performances.

Remarque Dans SQL Server 2005, La deuxième requête est exécutée basée sur le résultat généré par la première requête. Étant donné que la première requête génère un jeu de résultats réduits, la performance de la même requête texte intégral dans SQL Server 2005 est plus rapide que dans SQL Server 2008

Résolution

Informations de cumulatif de mise à jour

La version de SQL Server 2008

important Vous devez installer ce package de mise à jour cumulative si votre ordinateur exécute la version de SQL Server 2008.

Le correctif de ce problème a été publié tout d'abord en 5 mise à jour cumulative. Pour plus d'informations sur l'obtention de ce package de mises à jour cumulatives pour SQL Server 2008, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la base de connaissances Microsoft :
969531Lot mises à jour cumulatives 5 pour SQL Server 2008
Remarque Les versions étant cumulatives, chaque nouvelle version de correctif contient tous les correctifs et tous les correctifs de sécurité inclus avec la précédente SQL Server 2008 version du correctif. Nous vous recommandons d'envisager d'appliquer la dernière version de correctif qui comprendra ce correctif. Pour plus d'informations, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la base de connaissances Microsoft :
956909Versions de SQL Server 2008 publiées après SQL Server 2008

SQL Server 2008 Service Pack 1

important Vous devez installer ce package de mise à jour cumulative si votre ordinateur exécute SQL Server 2008 Service Pack 1.

Le correctif de ce problème a été publié également plus loin en mise à jour cumulative 3 pour SQL Server 2008 Service Pack 1. Pour plus d'informations sur ce package de mise à jour cumulative, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la base de connaissances Microsoft :
971491Lot mises à jour cumulatives 3 pour SQL Server 2008 Service Pack 1
Remarque Les versions étant cumulatives, chaque nouvelle version de correctif contient tous les correctifs et tous les correctifs de sécurité inclus avec la précédente SQL Server 2008 version du correctif. Microsoft vous recommande d'envisager appliquer la dernière version de correctif qui comprendra ce correctif. Pour plus d'informations, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la base de connaissances Microsoft :
970365Versions de SQL Server 2008 publiées après SQL Server 2008 Service Pack 1
Microsoft SQL Server 2008 les correctifs sont créés pour service packs SQL Server spécifiques. Vous devez appliquer un correctif SQL Server 2008 Service Pack 1 à une installation de SQL Server 2008 Service Pack 1. Par défaut, aucun correctif fourni dans un service pack SQL Server est inclus dans le prochain service pack SQL Server.

Statut

Microsoft a confirmé le que de ce problème dans les produits Microsoft répertoriés dans la section «S'applique à».

Références

Pour plus d'informations sur le modèle de service incrémentiel pour SQL Server, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la base de connaissances Microsoft :
935897Un modèle incrémentiel Servicing Model est disponible à partir de l'équipe SQL Server pour fournir des correctifs pour les problèmes signalés
Pour plus d'informations sur le schéma d'appellation des mises à jour SQL Server, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la base de connaissances Microsoft :
822499Nouveau schéma d'affectation de noms pour les packages de correctifs Microsoft SQL Server
Pour plus d'informations sur la terminologie mise à jour logicielle, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la base de connaissances Microsoft :
824684Description de la terminologie standard utilisée pour décrire les mises à jour logicielles Microsoft

Propriétés

Numéro d'article: 970287 - Dernière mise à jour: mardi 21 juillet 2009 - Version: 2.0
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft SQL Server 2008 Standard
  • Microsoft SQL Server 2008 Enterprise
  • Microsoft SQL Server 2008 Developer
  • Microsoft SQL Server 2008 Workgroup
Mots-clés : 
kbmt kbsurveynew kbexpertiseadvanced kbqfe kbfix KB970287 KbMtfr
Traduction automatique
IMPORTANT : Cet article est issu du système de traduction automatique mis au point par Microsoft (http://support.microsoft.com/gp/mtdetails). Un certain nombre d?articles obtenus par traduction automatique sont en effet mis à votre disposition en complément des articles traduits en langue française par des traducteurs professionnels. Cela vous permet d?avoir accès, dans votre propre langue, à l?ensemble des articles de la base de connaissances rédigés originellement en langue anglaise. Les articles traduits automatiquement ne sont pas toujours parfaits et peuvent comporter des erreurs de vocabulaire, de syntaxe ou de grammaire (probablement semblables aux erreurs que ferait une personne étrangère s?exprimant dans votre langue !). Néanmoins, mis à part ces imperfections, ces articles devraient suffire à vous orienter et à vous aider à résoudre votre problème. Microsoft s?efforce aussi continuellement de faire évoluer son système de traduction automatique.
La version anglaise de cet article est la suivante: 970287
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.

Envoyer des commentaires

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com