Cannot add or update a child row: a foreign key constraint fails

syrine01 Messages postés 44 Date d'inscription   Statut Membre Dernière intervention   -  
 Mohamed -
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 !

Merci d'avance
A voir également:

9 réponses

Utilisateur anonyme
 
Bonjour

Il manque la définition de la table 'login'
0
syrine01 Messages postés 44 Date d'inscription   Statut Membre Dernière intervention  
 
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;

0
Utilisateur anonyme
 
Maintenant, peux-tu donner la définition de la contrainte qui échoue d'après ton message d'erreur ?
0
syrine01 Messages postés 44 Date d'inscription   Statut Membre Dernière intervention  
 
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 ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Utilisateur anonyme
 
Je sais bien que id_demande est une clé étrangère. Je n'ai jamais dit le contraire. Je te demande sa définition.
0
syrine01 Messages postés 44 Date d'inscription   Statut Membre Dernière intervention  
 
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 ;)
0
Utilisateur anonyme
 
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.
0
syrine01 Messages postés 44 Date d'inscription   Statut Membre Dernière intervention  
 
Merci ;
tu parle de la définition de contrainte!! comme !! c'est a dire en SQL je doit définis ou quoi !
vraiment j'ai pas compris ?
0
Mohamed
 
Vidé les données des 2 tables ;) .
0