Cannot add or update a child row: a foreign key constraint fails
Fermé
syrine01
Messages postés44Date d'inscriptiondimanche 5 février 2012StatutMembreDernière intervention10 avril 2017
-
Modifié par irongege le 25/12/2013 à 20:27
Mohamed -
28 déc. 2014 à 10:51
Bonjour j'ai un petit soucis avec cette erreur ! Cela fait 4h que je cherche sur le net mais je ne trouve rien qui me permet de résoudre le problème pour les 2 tables.
lorsque j'insérée une une de mande de congé ou d'absence dans la table demande ili affiche cet erreur " Cannot add or update a child row: a foreign key constraint fails ('grh'.'demandes', CONSTRAINT 'hyht' FOREIGN KEY ('id_demande') REFERENCES 'login' ('id_login') ON DELETE CASCADE ON UPDATE CASCADE)" !!
Voici mes requêtes de création de table employées:
CREATE TABLE IF NOT EXISTS 'employees' ( 'id_employe' int(11) NOT NULL, 'nom' varchar(20) NOT NULL, 'prenom' varchar(20) NOT NULL, 'CIN' int(10) NOT NULL, 'tel' int(10) NOT NULL, 'etatcivil' varchar(20) NOT NULL, 'dateN' date NOT NULL, 'sexe' varchar(20) NOT NULL, 'situation' varchar(20) NOT NULL, 'nbreenfants' int(5) NOT NULL, 'adresse' varchar(20) NOT NULL, 'ville' varchar(20) NOT NULL, 'email' varchar(20) NOT NULL, PRIMARY KEY ('id_employe') ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
Voici le code de la création de table demande:
CREATE TABLE IF NOT EXISTS 'demandes' ( 'id' int(11) NOT NULL, 'id_demande' int(11) NOT NULL, 'nom' varchar(20) NOT NULL, 'prenom' varchar(20) NOT NULL, 'departement' varchar(20) NOT NULL, 'cause' varchar(20) NOT NULL, 'datedebut' date NOT NULL, 'datefin' date NOT NULL, 'nbrejours' int(11) NOT NULL, 'type' varchar(20) NOT NULL, 'statut' text NOT NULL, PRIMARY KEY ('id'), KEY 'id_demande' ('id_demande') ) ENGINE=InnoDB DEFAULT CHARSET=latin1 COMMENT='stocke les demandes des congés et d'absences ';
Quelqu'un a t il une idée ?
Je n'ai pas l'impression que mes contraintes soient mauvaises !
syrine01
Messages postés44Date d'inscriptiondimanche 5 février 2012StatutMembreDernière intervention10 avril 2017 26 déc. 2013 à 12:15
dsl je pas compris qu'est ce que te dit!
comment je peux définir la table login !!
déja j'ai le code de la table "login" voila :
CREATE TABLE IF NOT EXISTS 'login' ( 'id_login' int(11) NOT NULL, 'login' text NOT NULL, 'password' text NOT NULL, 'groupe' varchar(20) NOT NULL, PRIMARY KEY ('id_login') ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
Bonjour,
j'ai déja fait que le id_demande est le clé étrangére de la table "login " mais lorsque je fait une demande le méme erreur s'affiche !!
j'en sais pas pourquoi il affiche l'erreur ?
Vous n’avez pas trouvé la réponse que vous recherchez ?
syrine01
Messages postés44Date d'inscriptiondimanche 5 février 2012StatutMembreDernière intervention10 avril 2017 26 déc. 2013 à 18:57
la table lodin contient le login et le password et le type de groupe"admin ou employé" . lorsque un employé faire une demande de "congé" ou " d'absence" sera stocké en bd puis l'employé doit avoir leur statut de cette demande donc de cas tous les informations sera affichées en indiquant leur statut "acepter ou réfuser"
et aussi cet sera unique pour chaque employé dans ce cas j'ai le id_demande est la clé étrangére de la table login .
si s'éléve cette clé il affiche tous les demandes des utilisateurs au méme temps
mais j'ai trouve pas des solutions pour cet erreur "Cannot add or update a child row: a foreign key constraint fails ('grh'.'demandes', CONSTRAINT 'hyht' FOREIGN KEY ('id_demande') REFERENCES 'login' ('id_login') ON DELETE CASCADE ON UPDATE CASCADE)" !!
et merci a vous monsieur car tu cherche a m'aider ;)
Je suis désolé de ne pas pouvoir t'aider car tu ne comprends pas assez le français.
Je t'ai demandé plusieurs fois la définition de ta contrainte, et tu me parle de choses et d'autres sans jamais me donner le définition que je te demande.
Sans cette définition, je ne peux plus rien pour toi.
Bonne chance.