Maison >base de données >tutoriel mysql >Comment corriger les erreurs « Instruction INSERT en conflit avec la contrainte FOREIGN KEY » dans SQL Server ?

Comment corriger les erreurs « Instruction INSERT en conflit avec la contrainte FOREIGN KEY » dans SQL Server ?

Patricia Arquette
Patricia Arquetteoriginal
2025-01-20 04:03:08606parcourir

How to Fix

Guide de dépannage des erreurs de conflit de contraintes de clé étrangère SQL Server

Lors de l'insertion de nouvelles données dans la base de données, vous pouvez rencontrer des erreurs similaires à celle-ci :

<code>Msg 547, Level 16, State 0, Line 1
INSERT 语句与 FOREIGN KEY 约束 "FK_Sup_Item_Sup_Item_Cat" 冲突。冲突发生在数据库 "dev_bo"、表 "dbo.Sup_Item_Cat" 中。语句已终止。</code>

Comprendre le message d'erreur

Cette erreur indique qu'une violation de contrainte de clé étrangère s'est produite. Les clés étrangères référencent des colonnes dans une autre table pour garantir l’intégrité des données. Cette erreur est générée lorsque vous essayez d'insérer une valeur qui n'existe pas dans la table référencée.

Exemple : tables Sup_Item et Sup_Item_Cat

L'exemple d'erreur mentionné dans la question concerne les tables Sup_Item et Sup_Item_Cat. La colonne sup_item_cat_id dans Sup_Item est une clé étrangère qui fait référence à la clé primaire de Sup_Item_Cat. Cette erreur se produit si vous essayez d'insérer une valeur sup_item_cat_id qui n'existe pas dans Sup_Item_Cat.

Solution

Pour résoudre cette erreur, assurez-vous que la valeur que vous essayez d'insérer pour la colonne de clé étrangère existe dans la table référencée. Dans cet exemple, la valeur de la colonne client_id dans Sup_Item doit correspondre à un client valide dans la table dbo.Sup_Item_Cat.

Utilisation de SQL Server Management Studio

Vous pouvez utiliser SQL Server Management Studio pour identifier les colonnes de référencement et référencées. Exécutez la commande suivante :

<code>sp_help 'dbo.Sup_Item_Cat'</code>

Cela montrera la structure de la table Sup_Item_Cat, y compris les relations entre clé primaire et clé étrangère. Vérifiez la colonne où se trouve la clé étrangère FK_Sup_Item_Sup_Item_Cat, ainsi que la table et la colonne référencées.

En vous assurant que vos données sont conformes aux contraintes de clé étrangère, vous pouvez éviter de telles erreurs et maintenir l'intégrité des enregistrements de votre base de données.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn