CORRECTIF : Erreurs lorsque vous exécutez une requête qui utilise la clause FOR XML dans le mode de chemin d'accès dans SQL Server 2008 R2 ou SQL Server 2012

Traductions disponibles Traductions disponibles
Numéro d'article: 2715312 - Voir les produits auxquels s'applique cet article
Agrandir tout | Réduire tout

Sommaire

Microsoft distribue les correctifs Microsoft SQL Server 2008 R2 Service Pack 1 (SP1) dans un fichier téléchargeable. Les correctifs étant cumulatifs, chaque nouvelle version contient tous les correctifs et toutes les mises à jour de sécurité qui étaient inclus dans la précédente version de mise à jour SQL Server 2008 R2 Service Pack 1 (SP1).

Symptômes

Envisagez le scénario suivant :
  • Vous avez une application client qui exécute une requête dans Microsoft SQL Server 2008 R2 ou Microsoft SQL Server 2012.
  • La requête utilise la clause FOR XML dans le mode de chemin d'accès .
  • La requête s'exécute la commande SET NO_BROWSETABLE ON pour activer le paramètre NO_BROWSETABLE .
Dans ce scénario, la requête ne s'exécute pas. En outre, vous recevez le message d'erreur suivant sur l'application cliente et un fichier de minividage est généré dans le journal des erreurs SQL.

Msg 0, niveau 11, état 0, ligne 0
Une erreur grave s'est produite sur la commande actuelle. Les résultats, le cas échéant, doivent être rejetés.
Msg 0, niveau 20, état 0, ligne 0
Une erreur grave s'est produite sur la commande actuelle. Les résultats, le cas échéant, doivent être rejetés.

Notes
  • Un plan de requête qui est utilisé pour exécuter la requête n'est pas compilé.
  • Il n'existe pas d'événements du Générateur de profils pour la requête ayant échoué lorsque vous démarrez le profil SQL Server.
  • Lorsque ce problème se produit, le service SQL Server arrête par intermittence.

Cause

Ce problème se produit en raison d'une défaillance interne dans l'algebrizer SQL Server. Ce problème se produit lorsque SQL Server essaie d'ajouter des colonnes sont extraites d'un côté d'un n?ud d'opérateur de jointure de l'autre côté du n?ud d'opérateur de jointure. Par conséquent, une arborescence d'algebrizer non valide est créée, car les colonnes définies dans un côté du n?ud d'opérateur de jointure ne sont pas visibles de l'autre côté du n?ud d'opérateur de jointure.

Résolution

Informations de mise à jour cumulative

SQL Server 2012

Le correctif de ce problème a été tout d'abord publié de mise à jour Cumulative 3 pour SQL Server 2012. 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 :
2723749 Package de mise à jour cumulative 3 pour SQL Server 2012
Remarque Les versions étant cumulatives, chaque nouvelle version de correctif contient tous les correctifs et correctifs de sécurité inclus avec la précédente 2012 de SQL Server version du correctif. Microsoft vous recommande l'application la plus récente version du 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 :
2692828 L'année 2012 SQL Server versions publiées après la publication de SQL Server 2012
Vous devez appliquer un correctif SQL Server 2012 à une installation de SQL Server 2012.

SQL Server 2008 R2 Service Pack 2

Le correctif de ce problème a été tout d'abord publié de mise à jour Cumulative 1 pour SQL Server 2008 R2 Service Pack 2. Pour plus d'informations sur l'obtention de ce package de mise à jour cumulative, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft :
2720425 Package de mise à jour cumulative 1 pour SQL Server 2008 R2 Service Pack 2
Remarque Les versions étant cumulatives, chaque nouvelle version de correctif contient tous les correctifs et correctifs de sécurité inclus avec la précédente 2008 R2 SQL Server version du correctif. Nous vous recommandons l'application la plus récente version du 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 :
2730301 SQL Server 2008 R2 versions publiées après la publication de SQL Server 2008 R2 Service Pack 2

Package de mise à jour cumulative 7 pour SQL Server 2008 R2 SP1

Le correctif de ce problème a été tout d'abord publié de mise à jour Cumulative 7 pour SQL Server 2008 R2 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 :
2703282 Package de mise à jour cumulative 6 pour SQL Server 2008 R2 SP1
Remarque Les versions étant cumulatives, chaque nouvelle version de correctif contient tous les correctifs et correctifs de sécurité inclus avec la précédente 2008 R2 SQL Server version du correctif. Microsoft vous recommande l'application la plus récente version du 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 :
2567616 SQL Server 2008 R2 versions publiées après la publication de SQL Server 2008 R2 SP1
Microsoft SQL Server 2008 R2 correctifs sont créés pour les packs de service spécifiques SQL Server. Vous devez appliquer un correctif SQL Server 2008 R2 Service Pack 1 pour une installation de SQL Server 2008 R2 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é qu'il s'agit d'un problème pour les produits Microsoft répertoriés dans la section « S'applique à ».

Contournement

Pour contourner ce problème, appliquez l'une des méthodes suivantes.

Méthode 1

N'utilisez pas la clause FOR XML dans le mode de chemin d'accès .

Méthode 2

Exécutez la commande suivante pour désactiver le paramètre NO_BROWSETABLE :

SET NO_BROWSETABLE OFF

Références

Pour plus d'informations sur le mode de navigation, accédez au site Web MSDN suivant :
Informations générales sur le mode d'exploration
Pour plus d'informations sur comment utiliser le mode de tracé avec la clause FOR XML, consultez le site Web MSDN suivant :
Comment utiliser le mode de tracé avec la clause FOR XML

Propriétés

Numéro d'article: 2715312 - Dernière mise à jour: mercredi 29 août 2012 - Version: 2.0
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft SQL Server 2008 R2 Developer
  • Microsoft SQL Server 2008 R2 Enterprise
  • Microsoft SQL Server 2008 R2 Express
  • Microsoft SQL Server 2008 R2 Standard
  • Microsoft SQL Server 2008 R2 Web
  • Microsoft SQL Server 2008 R2 Workgroup
  • Microsoft SQL Server 2012 Business Intelligence
  • Microsoft SQL Server 2012 Developer
  • Microsoft SQL Server 2012 Enterprise
  • Microsoft SQL Server 2012 Standard
  • Microsoft SQL Server 2012 Web
  • SQL Server 2012 Enterprise Core
Mots-clés : 
kbqfe kbfix kbexpertiseadvanced kbsurveynew kbmt KB2715312 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: 2715312
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