CORRECTIF : « il n’y a aucune fonction ' {urn:schemas-microsoft-com:xml-sql}:variable() » erreur pour une requête XQuery qui met à jour la valeur d’une colonne XML dans SQL Server 2005, SQL Server 2008 ou dans SQL Server 2008 R2

S’applique à : SQL Server 2008 R2SQL Server 2008Microsoft SQL Server 2005

Microsoft distribue Microsoft SQL Server 2005, Microsoft SQL Server 2008 ou Microsoft SQL Server 2008 R2 résout sous la forme d’un fichier téléchargeable unique. Les correctifs étant cumulatifs, chaque nouvelle version contient tous les correctifs et correctifs de sécurité inclus dans la précédente SQL Server 2005, SQL Server 2008 ou SQL Server 2008 R2 version du correctif.

Symptômes


Lorsque vous exécutez une requête XQuery pour mettre à jour la valeur d’une colonne XML dans Microsoft SQL Server 2008 de Microsoft SQL Server 2005 ou Microsoft SQL Server 2008 R2, la requête XQuery ne s’exécute pas. En outre, un message d’erreur semblable au suivant s’affiche :
Erreur « Il n’y a aucune fonction ' {urn:schemas-microsoft-com:xml-sql}:variable()'
Par exemple, la requête suivante met à jour la valeur de la colonne TestCol ne s’exécute pas :
use test DECLARE @TestIdentity INT SET @TestIdentity = 100 UPDATE dbo.TestTable SET TestCol.modify('replace value of (/ROOT/b/@ID)[1] with sql:variable("@TestIdentity")') FROM dbo.TestTable2 tbl2 INNER JOIN dbo.TestTable tbl ON tbl2.aID = tbl.aID And tbl2.bID = @TestIdentity
RemarquePour contourner ce problème, vous devrez peut-être redémarrer l’instance de SQL Server 2005 ou SQL Server 2008.

Résolution


Informations sur les mises à jour cumulatives

SQL Server 2008 R2 Service Pack 1

Le correctif de ce problème a été publié dans 6 de mise à jour Cumulative pour SQL Server 2008 R2 Service Pack 1. 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 :
2679367 Mise à jour cumulative 6 pour SQL Server 2008 R2 Service Pack 1
Remarque Les versions étant cumulatives, chaque nouvelle version de correctif contient tous les correctifs et correctifs de sécurité inclus dans la précédente version du correctif de SQL Server 2008 R2. 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 :
2567616 Versions de SQL Server 2008 R2 publiées après SQL Server 2008 R2 Service Pack 1

SQL Server 2008 R2

Le correctif de ce problème a été publié dans 13 de mise à jour Cumulative. Pour plus d’informations sur l’obtention de ce package de mise à jour cumulative pour SQL Server 2008 R2, cliquez sur le numéro ci-dessous pour afficher l’article correspondant dans la Base de connaissances Microsoft :
2679366 Mise à jour cumulative 13 pour SQL Server 2008 R2
Remarque Les versions étant cumulatives, chaque nouvelle version de correctif contient tous les correctifs et correctifs de sécurité inclus dans la précédente version du correctif de SQL Server 2008 R2. 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 :
981356 Versions de SQL Server 2008 R2 publiées après SQL Server 2008 R2

SQL Server 2008 Service Pack 3

Le correctif de ce problème a été publié dans les 4 mise à jour Cumulative pour SQL Server 2008 Service Pack 3. 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 :
2673383 Package de mises à jour cumulatives 4 pour SQL Server 2008 Service Pack 3
Remarque Les versions étant cumulatives, chaque nouvelle version du correctif contient tous les correctifs et correctifs de sécurité inclus dans la précédente version du correctif de SQL Server 2008. 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 :
2629969 Versions de la mise SQL Server 2008 publiées après SQL Server 2008 Service Pack 3 a été
Les correctifs Microsoft SQL Server 2008 sont créés pour les packs de service spécifiques de SQL Server. Vous devez appliquer un correctif SQL Server 2008 Service Pack 3 pour une installation de SQL Server 2008 Service Pack 3. Par défaut, tout correctif qui est fourni dans un service pack de SQL Server est inclus dans le prochain service pack de SQL Server.

SQL Server 2008 R2 Service Pack 1

Le correctif de ce problème a été publié dans les 4 mise à jour Cumulative pour SQL Server 2008 R2 Service Pack 1. 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 :
2633146 Mise à jour cumulative 4 pour SQL Server 2008 R2 Service Pack 1
Remarque Les versions étant cumulatives, chaque nouvelle version de correctif contient tous les correctifs et correctifs de sécurité inclus dans la précédente version du correctif de SQL Server 2008 R2. 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 :
2567616 Versions de SQL Server 2008 R2 publiées après SQL Server 2008 R2 Service Pack 1

SQL Server 2008 R2

Le correctif de ce problème a été publié dans 11 de mise à jour Cumulative. Pour plus d’informations sur l’obtention de ce package de mise à jour cumulative pour SQL Server 2008 R2, cliquez sur le numéro ci-dessous pour afficher l’article correspondant dans la Base de connaissances Microsoft :
2633145 Mise à jour cumulative 11 de SQL Server 2008 R2
Remarque Les versions étant cumulatives, chaque nouvelle version de correctif contient tous les correctifs et correctifs de sécurité inclus dans la précédente version du correctif de SQL Server 2008 R2. 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 :
981356 Versions de SQL Server 2008 R2 publiées après SQL Server 2008 R2

SQL Server 2008 Service Pack 2

Le correctif de ce problème a été publié dans à jour Cumulative 7 pour SQL Server 2008 Service Pack 2. 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 :
2617148 Package de mise à jour cumulative 7 pour SQL Server 2008 Service Pack 2
Remarque Les versions étant cumulatives, chaque nouvelle version du correctif contient tous les correctifs et correctifs de sécurité inclus dans la précédente version du correctif de SQL Server 2008. 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 :
2402659 Versions de la mise SQL Server 2008 publiées après SQL Server 2008 Service Pack 2 a été
Les correctifs Microsoft SQL Server 2008 sont créés pour les packs de service spécifiques de SQL Server. Vous devez appliquer un correctif SQL Server 2008 Service Pack 2 à une installation de SQL Server 2008 Service Pack 2. Par défaut, tout correctif qui est fourni dans un service pack de SQL Server est inclus dans le prochain service pack de SQL Server.

SQL Server 2008 Service Pack 1

Le correctif de ce problème a été publié dans 16 de mise à jour Cumulative 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 :
2582282 Package de mise à jour cumulative 16 pour SQL Server 2008 Service Pack 1
Remarque Les versions étant cumulatives, chaque nouvelle version du correctif contient tous les correctifs et correctifs de sécurité inclus dans la précédente version du correctif de SQL Server 2008. 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 :
970365 Le 2008 de SQL Server versions publiées après SQL Server 2008 Service Pack 1
Les correctifs Microsoft SQL Server 2008 sont créés pour les packs de service spécifiques de SQL Server. Vous devez appliquer un correctif SQL Server 2008 Service Pack 1 dans une installation de SQL Server 2008 Service Pack 1. Par défaut, tout correctif qui est fourni dans un service pack de SQL Server est inclus dans le prochain service pack de SQL Server.

SQL Server 2008 R2 Service Pack 1

Le correctif de ce problème a été publié dans à jour Cumulative 1 pour SQL Server 2008 R2 Service Pack 1. 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 :
2544793 Mise à jour cumulative 1 pour SQL Server 2008 R2 Service Pack 1
Remarque Les versions étant cumulatives, chaque nouvelle version de correctif contient tous les correctifs et correctifs de sécurité inclus dans la précédente version du correctif de SQL Server 2008 R2. 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 :
2567616 Versions de SQL Server 2008 R2 publiées après SQL Server 2008 R2 Service Pack 1

SQL Server 2008 Service Pack 1

Le correctif de ce problème a été publié dans les 14 mise à jour Cumulative 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 :
2527187 Package de mise à jour cumulative 14 pour SQL Server 2008 Service Pack 1
Remarque Les versions étant cumulatives, chaque nouvelle version du correctif contient tous les correctifs et correctifs de sécurité inclus dans la précédente version du correctif de SQL Server 2008. 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 :
970365 Le 2008 de SQL Server versions publiées après SQL Server 2008 Service Pack 1
Les correctifs Microsoft SQL Server 2008 sont créés pour les packs de service spécifiques de SQL Server. Vous devez appliquer un correctif SQL Server 2008 Service Pack 1 dans une installation de SQL Server 2008 Service Pack 1. Par défaut, tout correctif qui est fourni dans un service pack de SQL Server est inclus dans le prochain service pack de SQL Server.

SQL Server 2008 Service Pack 2

Le correctif de ce problème a été publié dans les 4 mise à jour Cumulative pour SQL Server 2008 Service Pack 2. 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 :
2527180 Package de mises à jour cumulatives 4 pour SQL Server 2008 Service Pack 2
Remarque Les versions étant cumulatives, chaque nouvelle version du correctif contient tous les correctifs et correctifs de sécurité inclus dans la précédente version du correctif de SQL Server 2008. 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 :
2402659 Versions de la mise SQL Server 2008 publiées après SQL Server 2008 Service Pack 2 a été
Les correctifs Microsoft SQL Server 2008 sont créés pour les packs de service spécifiques de SQL Server. Vous devez appliquer un correctif SQL Server 2008 Service Pack 2 à une installation de SQL Server 2008 Service Pack 2. Par défaut, tout correctif qui est fourni dans un service pack de SQL Server est inclus dans le prochain service pack de SQL Server.

SQL Server 2008 Service Pack 3

Le correctif de ce problème a été publié dans les 4 mise à jour Cumulative pour SQL Server 2008 Service Pack 3. 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 :
2673383 Package de mises à jour cumulatives 4 pour SQL Server 2008 Service Pack 3
Remarque Les versions étant cumulatives, chaque nouvelle version du correctif contient tous les correctifs et correctifs de sécurité inclus dans la précédente version du correctif de SQL Server 2008. 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 :
2629969 Versions de la mise SQL Server 2008 publiées après SQL Server 2008 Service Pack 3 a été
Les correctifs Microsoft SQL Server 2008 sont créés pour les packs de service spécifiques de SQL Server. Vous devez appliquer un correctif SQL Server 2008 Service Pack 3 pour une installation de SQL Server 2008 Service Pack 3. Par défaut, tout correctif qui est fourni dans un service pack de SQL Server est inclus dans le prochain service pack de SQL Server.

SQL Server 2008 R2

Le correctif de ce problème a été publié dans les 7 mise à jour Cumulative. Pour plus d’informations sur l’obtention de ce package de mise à jour cumulative pour SQL Server 2008 R2, cliquez sur le numéro ci-dessous pour afficher l’article correspondant dans la Base de connaissances Microsoft :
2507770 Mise à jour cumulative 7 pour SQL Server 2008 R2
Remarque Les versions étant cumulatives, chaque nouvelle version de correctif contient tous les correctifs et correctifs de sécurité inclus dans la précédente version du correctif de SQL Server 2008 R2. 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 :
981356 Versions de SQL Server 2008 R2 publiées après SQL Server 2008 R2

SQL Server 2005 Service Pack 4

Le correctif de ce problème a été publié dans à jour Cumulative 3 pour SQL Server 2005 Service Pack 4. 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 :
2507769 Package de mise à jour cumulative 3 pour SQL Server 2005 Service Pack 4
Remarque Les versions étant cumulatives, chaque nouvelle version de correctif contient tous les correctifs et correctifs de sécurité inclus dans la précédente de SQL Server 2005 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 :
2485757 Versions de SQL Server 2005 publiées après SQL Server 2005 Service Pack 4
Les correctifs Microsoft SQL Server 2005 sont créés pour les packs de service spécifiques de SQL Server. Vous devez appliquer un correctif SQL Server 2005 Service Pack 4 pour une installation de SQL Server 2005 Service Pack 4. Par défaut, tout correctif qui est fourni dans un service pack de SQL Server est inclus dans le prochain service pack de SQL Server.

SQL Server 2005 Service Pack 3

Le correctif de ce problème a été publié dans 15 de mise à jour Cumulative pour SQL Server 2005 Service Pack 3. 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 :
2507766 Package de mise à jour cumulative 15 pour SQL Server 2005 Service Pack 3
Remarque Les versions étant cumulatives, chaque nouvelle version de correctif contient tous les correctifs et correctifs de sécurité inclus dans la précédente de SQL Server 2005 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 :
960598 Versions de SQL Server 2005 publiées après SQL Server 2005 Service Pack 3
Les correctifs Microsoft SQL Server 2005 sont créés pour les packs de service spécifiques de SQL Server. Vous devez appliquer un correctif SQL Server 2005 Service Pack 3 pour une installation de SQL Server 2005 Service Pack 3. Par défaut, tout correctif qui est fourni dans un service pack de SQL Server est inclus dans le prochain service pack de SQL Server.

Statut


Microsoft a confirmé l’existence de ce problème dans les produits Microsoft figurant dans la liste des produits concernés par cet article.

Références


Pour plus d’informations sur la procédure pour obtenir le type de données XML dans une requête XQuery, visitez le site Web MSDN suivant :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 :
935897 Un modèle de service incrémentiel est disponible auprès de l’équipe SQL Server pour proposer des correctifs pour les problèmes signalés
Pour plus d’informations sur le schéma d’appellation des mises à jour de SQL Server, cliquez sur le numéro ci-dessous pour afficher l’article correspondant dans la Base de connaissances Microsoft :
822499 Nouveau schéma d’affectation de noms pour les packages de mise à jour logicielle de Microsoft SQL Server
Pour plus d'informations sur la terminologie de mise à jour logicielle, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft :
824684 Terminologie standard utilisée pour décrire les mises à jour logicielles Microsoft