CORRECTIF : une contrainte de clé étrangère sur une table à l'éditeur n'est pas supprimée de la table à l'abonné dans une réplication de fusion SQL Server 2005

Traductions disponibles Traductions disponibles
Numéro d'article: 938825 - Voir les produits auxquels s'applique cet article
BUG #: 50001169 (correctifs SQL)

Microsoft distribue les correctifs Microsoft SQL Server 2005 le biais comme un fichier téléchargeable. Les correctifs étant cumulatifs, chaque nouvelle version contient tous les correctifs et tous les correctifs de sécurité qui étaient fournis avec la précédente SQL Server 2005 version du correctif.
Agrandir tout | Réduire tout

Sommaire

Résumé

Cet article décrit suivants concernant cette version de correctif logiciel :
  • Les problèmes qui sont résolus par le package de correctifs
  • Conditions préalables à l'installation le package de correctifs
  • Si vous devez redémarrer l'ordinateur après avoir installé le package de correctifs
  • Si le package de correctifs est remplacé par un autre package de correctif
  • Si vous devez apporter les modifications du Registre
  • Les fichiers qui sont contenus dans le package de correctifs

Symptômes

Une réplication de fusion Microsoft SQL Server 2005, vous permet de supprimer une contrainte de clé étrangère sur une table à l'éditeur. Après la synchronisation des données entre l'éditeur et l'abonné, l'Agent de fusion de réplication ne pas supprimer la contrainte de clé étrangère de la table à l'abonné.

Ce problème se produit lorsque les tables liées de l'éditeur et l'abonné n'appartiennent pas au schéma dbo.

Cause

Ce problème se produit car l'agent de fusion de réplication s'exécute une requête incorrecte à l'abonné. Lorsque l'Agent de fusion réplication exécute la requête, la fonction OBJECT_ID renvoie NULL. Ensuite, l'instruction EXISTS Si renvoie FALSE. Par conséquent, l'Agent de fusion de réplication n'est pas exécuté l'instruction DROP CONSTRAINT.

Voici un exemple de la requête qui s'exécute l'Agent de fusion de réplication sur l'abonné :
IF EXISTS (SELECT * from sysconstraints WHERE constid = OBJECT_ID (N'[FK_DETAIL_TO_MASTER]')) 
IF OBJECT_ID (N'[Test].[Detail]') IS NOT NULL 
EXEC ('ALTER TABLE [Test].[Detail] DROP CONSTRAINT FK_DETAIL_TO_MASTER')

Résolution

Mettre à jour les informations

Ce correctif est inclus dans la mise à jour cumulative package 2 (génération 3175) pour SQL Server 2005 Service Pack 2 (SP2).

Pour résoudre le problème décrit dans cet article, procédez comme suit :
  1. Installez SQL Server 2005 SP2.
  2. Installez la mise à jour cumulative package 2 (génération 3175) pour SQL Server 2005 SP2.
Pour plus d'informations, cliquez sur les numéros ci-dessous pour afficher les articles correspondants dans la Base de connaissances Microsoft :
913089 Comment obtenir le dernier pack service pour SQL Server 2005
936305 Le package de mise à jour cumulative 2 pour SQL Server 2005 Service Pack 2 est disponible

Informations sur le correctif

Un correctif est disponible auprès de Microsoft. Toutefois, ce correctif est conçu pour corriger le problème décrit dans cet article. Appliquer ce correctif uniquement aux systèmes rencontrant ce problème spécifique. Ce correctif peut subir des tests supplémentaires. Par conséquent, si vous n'êtes pas gravement touché par ce problème, nous vous recommandons d'attendre la prochaine mise à jour logicielles qui contiendra ce correctif.

Si le correctif est disponible pour le téléchargement, il est une section « téléchargement correctif disponible » en haut de cet article de la base de connaissances. Si cette section n'apparaît pas, contactez le service clientèle Microsoft et de support pour obtenir le correctif.

note Si des problèmes supplémentaires se produisent ou si n'importe quel dépannage est nécessaire, vous devrez peut-être créer une demande de service distincte. Les coûts habituels du support technique s'appliqueront aux autres questions et problèmes non traités par ce correctif spécifique. Pour une liste complète des Microsoft client service et support numéros de téléphone ou pour créer une demande de service distincte, reportez-vous au site de Web Microsoft suivant :
http://support.microsoft.com/contactus/?ws=support
note L'écran de « téléchargement correctif disponible » affiche les langues pour lesquelles le correctif est disponible. Si vous ne voyez pas la langue, il est car un correctif logiciel n'est pas disponible pour cette langue.

Conditions préalables

Vous devez avoir installé pour appliquer ce correctif logiciel SQL Server 2005 SP2.

Redémarrez les informations

Vous devez redémarrer l'ordinateur.

Informations sur le remplacement de correctif

Ce correctif est n'remplacé par aucun autre correctif.

Informations de Registre

Vous devez modifier le Registre.

Informations de fichier

Ce correctif contient uniquement les fichiers nécessaires à la résolution des problèmes décrits dans cet article. Ce correctif peut ne pas contenir tous les fichiers nécessaires à la mise à jour complètement un produit vers la dernière version.

La version anglaise de ce correctif dispose les attributs de fichier (ou attributs de fichier version ultérieure) répertoriés dans le tableau suivant. Les dates et heures de ces fichiers sont exprimées en temps universel coordonné (UTC). Lorsque vous affichez les informations de fichier, il est convertie en heure locale. Pour connaître le décalage entre l'heure UTC et l'heure locale, utilisez l'onglet Fuseau horaire dans l'élément Date et heure du Panneau de configuration.
SQL Server 2005, version 32 bits
Réduire ce tableauAgrandir ce tableau
Nom de fichierVersion du fichierTaille du fichierDateHeurePlate-forme
Microsoft.analysisservices.dll9.0.3175.01,217,90414-Juin-200715:05x 86
Microsoft.SqlServer.maintenanceplantasks.dll9.0.3175.0296,30414-Juin-200715:05x 86
Msmdlocal.dll9.0.3175.015,948,14414-Juin-200715:05x 86
Mssqlsystemresource.ldfNon applicable524,28814-Juin-200711:22Non applicable
Mssqlsystemresource.mdfNon applicable40,173,56814-Juin-200711:22Non applicable
Odsole70.dll2005.90.3175.059,24814-Juin-200715:05x 86
Rdistcom.dll2005.90.3175.0644,97614-Juin-200715:05x 86
Replmerg.exe2005.90.3175.0320,88014-Juin-200715:05x 86
Replrec.dll2005.90.3175.0784,75214-Juin-200715:05x 86
Sqlaccess.dll2005.90.3175.0350,57614-Juin-200715:05x 86
Sqlservr.exe2005.90.3175.029,193,07214-Juin-200715:05x 86
Sqlwep.dll2005.90.3175.090,99214-Juin-200715:05x 86
Sqsrvres.dll2005.90.3175.070,51214-Juin-200715:05x 86
Sysdbupg.SQLNon applicable510,62213-Juin-200720:46Non applicable
Xpstar90.dll2005.90.3175.0295,79214-Juin-200715:05x 86
SQL Server 2005, version 64 x
Réduire ce tableauAgrandir ce tableau
Nom de fichierVersion du fichierTaille du fichierDateHeurePlate-forme
Microsoft.analysisservices.dll9.0.3175.01,217,90414-Juin-200714:05x 86
Microsoft.SqlServer.maintenanceplantasks.dll9.0.3175.0296,30414-Juin-200714:05x 86
Msmdlocal.dll9.0.3175.015,948,14414-Juin-200714:05x 86
Mssqlsystemresource.ldfNon applicable524,28814-Juin-200710:22Non applicable
Mssqlsystemresource.mdfNon applicable40,173,56814-Juin-200710:22Non applicable
Odsole70.dll2005.90.3175.090,48014-Juin-200716:41x 64
Rdistcom.dll2005.90.3175.0828,78414-Juin-200716:41x 64
Replmerg.exe2005.90.3175.0417,64814-Juin-200716:41x 64
Replrec.dll2005.90.3175.01,011,56814-Juin-200716:41x 64
Sqlaccess.dll2005.90.3175.0357,74414-Juin-200716:41x 86
Sqlservr.exe2005.90.3175.039,674,22414-Juin-200716:41x 64
Sqlwep.dll2005.90.3175.090,99214-Juin-200714:05x 86
Sqlwep.dll2005.90.3175.0123,76014-Juin-200716:41x 64
Sqsrvres.dll2005.90.3175.083,31214-Juin-200716:41x 64
Sysdbupg.SQLNon applicable510,62213-Juin-200719:46Non applicable
Xpstar90.dll2005.90.3175.0546,67214-Juin-200716:41x 64
SQL Server 2005, version d'architecture Itanium
Réduire ce tableauAgrandir ce tableau
Nom de fichierVersion du fichierTaille du fichierDateHeurePlate-forme
Microsoft.analysisservices.dll9.0.3175.01,217,90414-Juin-200715:05x 86
Microsoft.SqlServer.maintenanceplantasks.dll9.0.3175.0296,30414-Juin-200715:05x 86
Msmdlocal.dll9.0.3175.049,904,49614-Juin-200719:56IA-64
Mssqlsystemresource.ldfNon applicable524,28814-Juin-200711:22Non applicable
Mssqlsystemresource.mdfNon applicable40,173,56814-Juin-200711:22Non applicable
Odsole70.dll2005.90.3175.0179,56814-Juin-200719:56IA-64
Rdistcom.dll2005.90.3175.01,885,55214-Juin-200719:56IA-64
Replmerg.exe2005.90.3175.0957,29614-Juin-200719:56IA-64
Replrec.dll2005.90.3175.02,145,13614-Juin-200719:56IA-64
Sqlaccess.dll2005.90.3175.0352,11214-Juin-200719:56x 86
Sqlservr.exe2005.90.3175.072,530,80014-Juin-200719:56IA-64
Sqlwep.dll2005.90.3175.090,99214-Juin-200715:05x 86
Sqlwep.dll2005.90.3175.0221,04014-Juin-200719:56IA-64
Sqsrvres.dll2005.90.3175.0147,31214-Juin-200719:56IA-64
Sysdbupg.SQLNon applicable510,62213-Juin-200720:46Non applicable
Xpstar90.dll2005.90.3175.0957,29614-Juin-200719:56IA-64

Contournement

Pour contourner ce problème, supprimer manuellement la contrainte de clé étrangère de la table à l'abonné.

Statut

Microsoft a confirmé que c'est un problème dans les produits Microsoft répertoriés dans la section « S'applique à ».

Plus d'informations

Procédure pour reproduire le problème

  1. Création de deux tables avec un schéma qui n'est pas un schéma dbo.
  2. Créer une contrainte clée étrangère sur une table afin de faire référence à une colonne dans une autre table.

    note Lorsque vous créez la contrainte de clé étrangère, la contrainte de clé étrangère est créée par l'utilisation d'un schéma qui n'est pas un schéma dbo.
  3. Publier les deux tables.

    note Lorsque vous publiez les tables, assurez-vous que vous effectuer les opérations suivantes :
    • Indiquer que la contrainte de clé primaire et la contrainte de clé étrangère doivent être copiés dans les abonnés.
    • Spécifier la propriété propriétaire de l'objet destination de l'article correspondant doit être un propriétaire de l'utilisateur dbo.
  4. Initialiser un abonnement.
  5. Supprimer la contrainte de clé étrangère sur l'éditeur.
  6. Exécuter l'Agent de fusion pour synchroniser les données entre l'éditeur et l'abonné.

Références

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 :
822499 Nouveau modèle d'affectation de noms pour les packages de correctifs logiciels Microsoft SQL Server
Pour plus d'informations sur la terminologie mise à jour logicielles, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft :
824684 Description de la terminologie standard utilisée pour décrire les mises à jour logicielles Microsoft

Propriétés

Numéro d'article: 938825 - Dernière mise à jour: mardi 20 novembre 2007 - Version: 1.4
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft SQL Server 2005 Express Edition
  • Microsoft SQL Server 2005 Express Edition with Advanced Services
  • Microsoft SQL Server 2005 Workgroup Edition
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Standard X64 Edition
  • Microsoft SQL Server 2005 Enterprise X64 Edition
  • Microsoft SQL Server 2005 Standard Edition for Itanium Based Systems
  • Microsoft SQL Server 2005 Enterprise Edition for Itanium Based Systems
Mots-clés : 
kbmt kbautohotfix kbhotfixserver kbexpertiseadvanced kbqfe kbfix KB938825 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: 938825
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