J'ai eu ce problème moi-même, concernant le message d'erreur qui est reçu en essayant de remplir un champ de clé étrangère. Je me suis retrouvé sur cette page dans l'espoir de trouver la réponse. La réponse vérifiée sur cette page est en effet la bonne, malheureusement je pense que la réponse est un peu incomplète pour les gens qui ne connaissent pas aussi bien SQL. Je suis assez apte à écrire du code, mais les requêtes SQL sont nouvelles pour moi ainsi que la création de tables de base de données.
Bien que la réponse cochée soit correcte:
Mike M a écrit-
"Le fonctionnement d'un FK est qu'il ne peut pas avoir de valeur dans cette colonne qui ne se trouve pas également dans la colonne de clé primaire de la table référencée."
Ce qui manque à cette réponse est simplement;
Vous devez d'abord créer la table contenant la clé primaire.
Une autre façon de le dire est;
Vous devez insérer des données dans la table parent, contenant la clé primaire, avant de tenter d'insérer des données dans la table enfant contenant la clé étrangère.
En bref, de nombreux didacticiels semblent masquer ce fait, de sorte que si vous essayiez par vous-même et ne réalisiez pas qu'il y avait un ordre de fonctionnement, vous obtiendriez cette erreur. Naturellement, après l'ajout des données de clé primaire, vos données de clé étrangère dans la table enfant doivent être conformes au champ de clé primaire dans la table parent, sinon, vous obtiendrez toujours cette erreur.
Si quelqu'un a lu jusqu'ici. J'espère que cela a aidé à rendre la réponse vérifiée plus claire. Je sais que certains d'entre vous peuvent penser que ce genre de chose est assez simple et qu'ouvrir un livre aurait répondu à cette question avant sa publication, mais la vérité est que tout le monde n'apprend pas de la même manière.
Sup_Item_Cat
table. Pas grand chose d'autre à dire à ce sujet.