KB2498818-FIX : erreur 7359 lorsque vous exécutez une requête sur une fonction définie par l’utilisateur ou une vue qui utilise un synonyme sur un serveur lié dans SQL Server 2005, SQL Server 2008 ou SQL Server 2008 R2

Microsoft distribue les correctifs Microsoft SQL Server 2005, Microsoft SQL Server 2008 et Microsoft SQL Server 2008 R2 comme un fichier téléchargeable. Dans la mesure où les correctifs sont cumulatifs, chaque nouvelle version contient tous les correctifs et les correctifs de sécurité inclus dans les versions antérieures de SQL Server 2005, Microsoft SQL Server 2008 et SQL Server 2008 R2.Le correctif décrit dans cet article est disponible pour les versions suivantes de SQL Server :

  • Microsoft SQL Server 2005 Service Pack 3 (SP3)

  • Microsoft SQL Server 2005 Service Pack 4 (SP4)

  • Microsoft SQL Server 2008 Service Pack 1 (SP1)

  • Microsoft SQL Server 2008 Service Pack 2 (SP2)

Symptômes

Prenons l’exemple du scénario suivant :

  • Vous pouvez créer un serveur lié sur un ordinateur exécutant Microsoft SQL Server 2005, Microsoft SQL Server 2008 ou Microsoft SQL Server 2008 R2. Le serveur lié pointe vers une source de données OLE DB sur un serveur distant.

  • Vous pouvez créer un synonyme pour une table sur le serveur lié.

  • Vous créez une fonction définie par l’utilisateur qui utilise le synonyme ou vous créez une vue qui utilise le synonyme. Ensuite, vous exécutez une requête sur la fonction définie par l’utilisateur ou l’affichage.Remarque Lorsque vous exécutez la requête, un plan d’exécution est mis en cache.

  • Pour mettre à jour la version de schéma de la table sur le serveur lié, vous devez effectuer une opération sur un serveur distant. Par exemple, vous reconstruisez l’index de la table sur le serveur distant pour mettre à jour la version de schéma de la table sur le serveur lié.

  • Vous exécutez une autre requête sur la fonction définie par l’utilisateur ou l’affichage.

Dans ce scénario, vous recevez un message d’erreur qui ressemble à ce qui suit :

Serveur : MSG 7359, numérode niveau de niveau, numéro d’Étatd’État, lignede ligne le fournisseur OLE DB "nom dufournisseur" pour le serveur lié "nom duserveur lié" a signalé une modification de la version du schéma entre le moment de la compilation ("temps decompilation") et le temps d’exécution ("temps d’exécution")Linked Table Name

Remarque le nom du fournisseur est un espace réservé qui représente le nom du fournisseur OLE DB. Nom de la table liée est un espace réservé qui représente le nom de la table qui se trouve sur le serveur lié.

Cause

Ce problème survient parce que le plan d’exécution existant n’est pas correctement compensé. Cela entraîne la modification de la version de schéma, car la fonction définie par l’utilisateur ou la vue est recompilée lors de l’exécution de la deuxième requête. C’est la raison pour laquelle l’erreur s’est produite.

Résolution

Informations sur les mises à jour cumulatives

SQL Server 2008 R2 Service Pack 1

Le correctif de ce problème a été émis pour la première fois dans la mise à jour cumulative 1 pour SQL Server 2008 R2 Service Pack 1. Pour plus d’informations sur la façon d’obtenir ce package de mise à jour cumulative, cliquez sur le numéro ci-dessous pour consulter l’article de la base de connaissances Microsoft :

2544793 Package de mise à jour cumulative 1 pour SQL Server 2008 R2 Service Pack 1Remarque Dans la mesure où les builds sont cumulatives, chaque nouvelle version du correctif contient tous les correctifs et les correctifs de sécurité inclus dans la version précédente du correctif SQL Server 2008 R2. Nous vous recommandons d’appliquer la version de correctif la plus récente qui contient 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 Builds SQL Server 2008 R2 publiées après la sortie de SQL Server 2008 R2 Service Pack 1

SQL Server 2008 R2

Le correctif de ce problème a été émis pour la première fois dans la mise à jour cumulative 7. Pour plus d’informations sur la façon d’obtenir ce package de mise à jour cumulative pour SQL Server 2008 R2, cliquez sur le numéro ci-dessous pour consulter l’article de la base de connaissances Microsoft :

2507770 Package de mise à jour cumulative 7 pour SQL Server 2008 R2 Remarque Dans la mesure où les builds sont cumulatives, chaque nouvelle version du correctif contient tous les correctifs et les correctifs de sécurité inclus dans la version précédente du correctif SQL Server 2008 R2. Nous vous recommandons d’appliquer la version de correctif la plus récente qui contient 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 Builds SQL Server 2008 R2 publiées après la sortie de SQL Server 2008 R2

Pour SQL Server 2005 SP3

Le correctif de ce problème a été émis pour la première fois dans la mise à jour cumulative 15. Pour plus d’informations sur la façon d’obtenir ce package de mise à jour cumulative pour SQL Server 2005 SP3, cliquez sur le numéro ci-dessous pour consulter l’article de la base de connaissances Microsoft :

2507766 Package de mise à jour cumulative 15 pour SQL Server 2005 SP3 Remarque Dans la mesure où les builds sont cumulatives, chaque nouvelle version du correctif contient tous les correctifs et les correctifs de sécurité inclus dans l’ancienne version du correctif SQL Server 2005 SP3. Nous vous recommandons d’appliquer la version de correctif la plus récente qui contient 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 Builds SQL Server 2005 publiées après la sortie de SQL Server 2005 SP3

Pour SQL Server 2005 SP4

Le correctif de ce problème a été émis pour la première fois dans la mise à jour cumulative 3. Pour plus d’informations sur la façon d’obtenir ce package de mise à jour cumulative pour SQL Server 2005 SP4, cliquez sur le numéro ci-dessous pour consulter l’article de la base de connaissances Microsoft :

2507769 Package de mise à jour cumulative 3 pour SQL Server 2005 SP4Remarque Dans la mesure où les builds sont cumulatives, chaque nouvelle version du correctif contient tous les correctifs et les correctifs de sécurité inclus dans l’ancienne version du correctif SQL Server 2005 SP4. Nous vous recommandons d’appliquer la version de correctif la plus récente qui contient ce correctif. Pour plus d'informations, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft :

937137 Builds SQL Server 2005 publiées après la sortie de SQL Server 2005 SP4

Pour SQL Server 2008 SP1

Le correctif de ce problème a été émis pour la première fois dans la mise à jour cumulative 13. Pour plus d’informations sur la façon d’obtenir ce package de mise à jour cumulative pour SQL Server 2008 SP1, cliquez sur le numéro ci-dessous pour consulter l’article de la base de connaissances Microsoft :

2497673 Package de mise à jour cumulative 13 pour SQL Server 2008 SP1 Remarque Dans la mesure où les builds sont cumulatives, chaque nouvelle version du correctif contient tous les correctifs et les correctifs de sécurité inclus dans la version précédente du correctif SQL Server 2008 SP1. Nous vous recommandons d’appliquer la version de correctif la plus récente qui contient 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 Builds SQL Server 2008 publiées après la sortie de SQL Server 2008 SP1

Pour SQL Server 2008 SP2

Le correctif de ce problème a été émis pour la première fois dans la mise à jour cumulative 3. Pour plus d’informations sur la façon d’obtenir ce package de mise à jour cumulative pour SQL Server 2008 SP2, cliquez sur le numéro ci-dessous pour consulter l’article de la base de connaissances Microsoft :

2498535 Package de mise à jour cumulative 3 pour SQL Server 2008 SP2Remarque Dans la mesure où les builds sont cumulatives, chaque nouvelle version du correctif contient tous les correctifs et les correctifs de sécurité inclus dans l’ancienne version du correctif SQL Server 2008 SP2. Nous vous recommandons d’appliquer la version de correctif la plus récente qui contient 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 Builds SQL Server 2008 publiées après la sortie de SQL Server 2008 SP2

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.

Informations supplémentaires

Pour plus d’informations sur l’utilisation de Transact-SQL pour créer un synonyme, visitez le site Web Microsoft Developer Network (MSDN) suivant :

Utiliser Transact-SQL pour créer un synonyme

Besoin d’aide ?

Développez vos compétences
Découvrez des formations
Accédez aux nouvelles fonctionnalités en avant-première
Rejoindre Microsoft Insider

Ces informations vous ont-elles été utiles ?

Nous vous remercions pour vos commentaires.

Merci pour vos commentaires. Il serait vraisemblablement utile pour vous de contacter l’un de nos agents du support Office.

×