Partage
  • Partager sur Facebook
  • Partager sur Twitter

ma requête sql ne fonctionne pas, erreur #1452

    20 mai 2018 à 11:31:02

    J'utilise phpmyadmin, j'ai 7 tables dans ma base de données, elles sont actuellement toutes vides, je souhaiter remplir la table "nounou", qui comprend :
    Numéro de nounou (primary key autoincrémentée) int(11)
    nom Varchar(20)
    prénom Varchar(20)
    mail Varchar(20)
    portable int(11)
    langues text
    photo Varchar(100)
    age int(11)
    expérience text
    phrase de presentation text
    revenus int(11)

    Pour cela je fais la requête :
    INSERT INTO `Nounou`( `nom`, `prenom`, `mail`, `portable`, `langues`, `photo`, `age`, `experience`, `phrase de presentation`, `revenu`) VALUES ('mat','mi','mat.mi@gmail.com',0123456789,'français','28381523_419611798469090_452860909_n.jpg',43,'je suis nounou','bonjour',0)
    et phpmyadmin me répond :


    #1452 - Cannot add or update a child row: a foreign key constraint fails (`nounou`.`nounou`, CONSTRAINT `nounou_ibfk_1` FOREIGN KEY (`numero de nounou`) REFERENCES `Disponibilité` (`nounou`))


    Disponibilité est une de mes tables, qui se sert de la clef primaire "Numéro de nounou"
    Est-ce que mon problème a un lien avec l'auto-incrémentation de ma clefs primaire ? je ne sais pas comment le gérer. 

    Je vous remercie par avance pour votre aide apportée. 

    • Partager sur Facebook
    • Partager sur Twitter
      21 mai 2018 à 11:12:13

      Bonjour,

      MASA10 a écrit:

      Cannot add or update a child row: a foreign key constraint fails (`nounou`.`nounou`, CONSTRAINT `nounou_ibfk_1` FOREIGN KEY (`numero de nounou`) REFERENCES `Disponibilité` (`nounou`))

      Cette erreur t'indique que tu essayes d'insérer dans la table nounou une valeur pour la colonne nounou qui n'existe pas encore dans la table référencées Disponibilité ...

      Mais je ne comprends pas pourquoi cette colonne est clé primaire dans la table nounou ET dans la table disponibilité ? Je pense que tu as construis ta clé étrangère à l'envers ... C'est la colonne de la colonne disponibilité.nounou que devrait être clé étrangère et faire référence à la colonne nounou.nounou ...

      Au passage, une bonne pratique consiste à éviter les accents et caractères spéciaux dans les noms de table et de colonne ...

      • Partager sur Facebook
      • Partager sur Twitter
      Seul on va plus vite, ensemble on va plus loin ... A maîtriser : Conception BDD, MySQL, PHP/MySQL

      ma requête sql ne fonctionne pas, erreur #1452

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown