IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

EDI, CMS, Outils, Scripts et API PHP Discussion :

erreur MySQL 1452


Sujet :

EDI, CMS, Outils, Scripts et API PHP

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Février 2010
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 71
    Points : 55
    Points
    55
    Par défaut erreur MySQL 1452
    Bonjour,

    je suis actuellement dans la phase de conception du modèle de la base de données pour un projet, voici le code SQL (la partie du code) de la base "mpm", créée à l'aide de phpMyAdmin :

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
     
    --
    -- Base de données: `mpm`
    --
     
    --
    -- Structure de la table `questions`
    --
     
    CREATE TABLE IF NOT EXISTS `questions` (
      `id_question` int(255) unsigned NOT NULL AUTO_INCREMENT,
      `id_sondage` int(255) unsigned NOT NULL COMMENT 'id du sondage',
      `label` varchar(255) NOT NULL,
      `ordre` int(255) unsigned NOT NULL,
      `type` varchar(255) NOT NULL,
      PRIMARY KEY (`id_question`),
      UNIQUE KEY `id_sondage` (`id_sondage`)
    ) ENGINE=InnoDB  DEFAULT CHARSET=utf8 AUTO_INCREMENT=11 ;
     
    -- --------------------------------------------------------
     
    --
    -- Structure de la table `reponses`
    --
     
    CREATE TABLE IF NOT EXISTS `reponses` (
      `id_reponses` int(255) unsigned NOT NULL AUTO_INCREMENT,
      `id_questions` int(255) unsigned NOT NULL,
      `label` varchar(255) NOT NULL,
      PRIMARY KEY (`id_reponses`),
      KEY `id_questions` (`id_questions`)
    ) ENGINE=InnoDB  DEFAULT CHARSET=utf8 AUTO_INCREMENT=5 ;
     
    -- --------------------------------------------------------
     
    --
    -- Structure de la table `sondages`
    --
     
    CREATE TABLE IF NOT EXISTS `sondages` (
      `id_sondage` int(255) unsigned NOT NULL AUTO_INCREMENT,
      `nom_sondage` varchar(80) NOT NULL,
      `theme` varchar(25) NOT NULL,
      `actif` tinyint(1) unsigned NOT NULL DEFAULT '0',
      `date_creation` date NOT NULL,
      PRIMARY KEY (`id_sondage`),
      UNIQUE KEY `nom_sondage` (`nom_sondage`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
     
    --
    -- Contraintes pour la table `reponses`
    --
    ALTER TABLE `reponses`
      ADD CONSTRAINT `reponses_ibfk_1` FOREIGN KEY (`id_questions`) REFERENCES `questions` (`id_question`) ON DELETE CASCADE ON UPDATE CASCADE;

    Le problème c'est que mysql me donne une erreur 1452
    MySQL a réponduocumentation
    #1452 - Cannot add or update a child row: a foreign key constraint fails (`mpm`.<result 2 when explaining filename '#sql-b90_191'>, CONSTRAINT `#sql-b90_191_ibfk_1` FOREIGN KEY (`id_sondage`) REFERENCES `sondages` (`id_sondage`))
    quand je veux relier "id_sondage" de la table "question" à "id_sondage" de la table "sondage". Je vois pas d'où vient le problème, j'ai bien fait attention à mettre le même type pour les 2 champs ... et ça a bien marché pour les clés "id_question" des tables "reponses" et "questions".

    Pourriez-vous m'aider s'il vous plait ?

    Merci

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Février 2010
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 71
    Points : 55
    Points
    55
    Par défaut
    A ma grande surprise, ça a marché ! J'ai rajouté un lien entre je ne sais plus quelles tables et c'est bon

    Mais quand je veux tester, je vais dans comptes, j'arrive à ajouter un user, mais quand je vais dans la table "sondages", j'essaie de rajouter une entrer et j'obtiens :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     MySQL a répondu:Documentation
    #1452 - Cannot add or update a child row: a foreign key constraint fails (`mpm`.`sondages`, CONSTRAINT `sondages_ibfk_1` FOREIGN KEY (`id_sondage`) REFERENCES `user_sondage` (`id_sondage`))
    Je vais essayer de voir d'où vient le problème, et si vous avez des pistes, je prends =)

    Merci

Discussions similaires

  1. [MySQL-5.7] #1452 Erreur MySQL
    Par Pinigseu dans le forum Requêtes
    Réponses: 10
    Dernier message: 16/10/2017, 11h12
  2. erreur mysql Unknown column...
    Par italiasky dans le forum Requêtes
    Réponses: 9
    Dernier message: 08/02/2006, 10h26
  3. erreur mysql... probleme de requete
    Par om.rava dans le forum Requêtes
    Réponses: 5
    Dernier message: 07/12/2005, 21h48
  4. avoir les log d'erreur mysql
    Par simoryl dans le forum Administration
    Réponses: 4
    Dernier message: 06/09/2005, 14h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo