Se connecter avec Microsoft
S'identifier ou créer un compte.
Bonjour,
Sélectionnez un autre compte.
Vous avez plusieurs comptes
Choisissez le compte avec lequel vous voulez vous connecter.

Symptômes

Lorsque vous mettez à jour la colonne clé primaire de la table de clé primaire dans Microsoft SQL Server 2005 en modifiant la casse des valeurs de colonne existantes ou en remplissant les valeurs de colonne, vous recevez le message d’erreur suivant :

MSG 547, niveau 16, état 0, ligne 1La instruction mise à jour en conflit avec la contrainte de référence «<contrainte>». Le conflit s’est produit dans la base de données «<nom de la base de données>», table «<nom de la table>», colonne «<nom de la colonne>».

Par exemple, ce problème se produit dans les deux situations suivantes.

Exemple 1

  • Vous pouvez créer deux tables à l’aide d’un assemblage qui ne respecte pas la casse, tel que le regroupement SQL_Latin1_General_CP1_CI_AS.

  • Vous créez une relation clé primaire et clé étrangère entre ces deux tables.

  • Pour mettre à jour la colonne clé primaire de la table de clé primaire, modifiez la casse des valeurs de colonne existantes.

Exemple 2

  • Vous créez deux tables.

  • Vous créez une relation clé primaire et clé étrangère entre ces deux tables.

  • Le paramètre ANSI_PADDING est défini sur désactivé.Remarque Par défaut, le paramètre ANSI_PADDING est défini sur désactivé.

  • Vous pouvez mettre à jour la colonne clé primaire de la table de clé primaire en remplissant les valeurs de colonne.

Cause

Ce problème se produit car les valeurs égales au niveau de type peuvent être distinctes au niveau binaire. Par exemple, au niveau de type, N’a’est égal à N’A'. Toutefois, au niveau binaire, N’a’n’est pas égal à N’A'. Le mécanisme d’optimisation suppose que l’opération de mise à jour qui modifie la casse n’apporte aucune modification réelle. C’est la raison pour laquelle le contrôle PK-FK ne fonctionne pas.

Résolution

Informations sur le Service Pack

Pour résoudre ce problème, procurez-vous le dernier Service Pack pour SQL Server 2005. Pour plus d’informations, cliquez sur le numéro ci-dessous pour consulter l’article de la base de connaissances Microsoft :

913089 Comment obtenir le dernier Service Pack pour SQL Server 2005

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. Ce problème a été corrigé pour la première fois dans SQL Server 2005 Service Pack 3.

Informations supplémentaires

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

Besoin d’aide ?

Vous voulez plus d’options ?

Explorez les avantages de l’abonnement, parcourez les cours de formation, découvrez comment sécuriser votre appareil, etc.

Les communautés vous permettent de poser des questions et d'y répondre, de donner vos commentaires et de bénéficier de l'avis d'experts aux connaissances approfondies.

Ces informations vous ont-elles été utiles ?

Dans quelle mesure êtes-vous satisfait(e) de la qualité de la langue ?
Qu’est-ce qui a affecté votre expérience ?
En cliquant sur Envoyer, vos commentaires seront utilisés pour améliorer les produits et services de Microsoft. Votre administrateur informatique sera en mesure de collecter ces données. Déclaration de confidentialité.

Nous vous remercions de vos commentaires.

×