Problème de requete

cs_vinz78 Messages postés 207 Date d'inscription jeudi 24 mai 2007 Statut Membre Dernière intervention 24 juillet 2007 - 13 juin 2007 à 11:44
cs_vinz78 Messages postés 207 Date d'inscription jeudi 24 mai 2007 Statut Membre Dernière intervention 24 juillet 2007 - 15 juin 2007 à 14:28
salut,
alors mon problème est que je n'arrive pas a éxécuté de insert into sur mes tables depuis que j'ai fais des clés étrangères et des clé primaires  il me sort toujour cette erreur

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

si kk1 voit d'où vien le pb sa serait sympa de me l'indiquer.

7 réponses

coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 43
13 juin 2007 à 11:49
Salut

faut que le champ associe existe dans l'autre table

<hr />une recherche sur exalead vous aurait peut-etre evite de poser cette question

In a dream, I saw me, drop dead...
U were there, U cried...
It was just a dream,
if I die, U won't cry, maybe, U'll be happy
0
cs_vinz78 Messages postés 207 Date d'inscription jeudi 24 mai 2007 Statut Membre Dernière intervention 24 juillet 2007
13 juin 2007 à 12:39
en gros si j'ai une table client(nom prenom adresse id_clt lienclt) et une table intervention (type montant date lienint id_int) il faut que la valeur de lien int ou de lienclt qui son mes clé etrangère soi les meme ?
0
nounours21_6 Messages postés 255 Date d'inscription mercredi 3 novembre 2004 Statut Membre Dernière intervention 21 avril 2009
13 juin 2007 à 13:07
Salut,

en faite il faut que tes tables soit comme ca
client(id_clt, nom, prenom)
intervention(id_int, type, montant, date, id_clt)

<<--<<--nOUnoURs-->>-->>
0
cs_vinz78 Messages postés 207 Date d'inscription jeudi 24 mai 2007 Statut Membre Dernière intervention 24 juillet 2007
13 juin 2007 à 13:18
euh moi j'ai fais sa en fait
client(id_clt, nom, prenom, lienclt)
intervention(id_int, type, montant, date, id_clt, #lienclt)

par contre je sais pas comment on fait sous mysql pour mettre un identifiant en clé étrangère dans une autre table ya juste a le rentré ?
0

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

Posez votre question
cs_vinz78 Messages postés 207 Date d'inscription jeudi 24 mai 2007 Statut Membre Dernière intervention 24 juillet 2007
13 juin 2007 à 14:06
voici un morceau de ma table

-- phpMyAdmin SQL Dump
-- version 2.10.1
-- http://www.phpmyadmin.net
--
-- Serveur: localhost
-- Généré le : Mer 13 Juin 2007 à 13:59
-- Version du serveur: 4.1.9
-- Version de PHP: 5.2.2

SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";

--
-- Base de données: `projetbeta`
--

-- --------------------------------------------------------

--
-- Structure de la table `basereseau`
--

CREATE TABLE `basereseau` (
  `nbacces` int(5) NOT NULL default '0',
  `license` varchar(20) NOT NULL default '',
  `typeinst` varchar(20) NOT NULL default '',
  `nbaccesteams` varchar(20) NOT NULL default '',
  `lienbr` varchar(20) NOT NULL default '0',
  `lienbt` varchar(20) NOT NULL default '',
  `lienbt2` varchar(20) NOT NULL default '',
  `lienbt3` varchar(20) NOT NULL default '',
  `lienbt4` varchar(20) NOT NULL default '',
  `lienclt` varchar(20) NOT NULL default '',
  `liencom` varchar(20) NOT NULL default '',
  `liendroitinf` varchar(20) NOT NULL default '',
  `lienint` varchar(20) NOT NULL default '',
  `lienrmqint` varchar(20) NOT NULL default '',
  `lienrmqclt` varchar(20) NOT NULL default '',
  `lienmat4` varchar(20) NOT NULL default '',
  `lienmat3` varchar(20) NOT NULL default '',
  `lienmat` varchar(20) NOT NULL default '',
  `lienmat2` varchar(20) NOT NULL default '',
  `lienimg` varchar(20) NOT NULL default '',
  `id_br` varchar(20) NOT NULL default '0',
  PRIMARY KEY  (`id_br`),
  KEY `lien` (`lienbr`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
--
-- Contraintes pour la table `basereseau`
--

ALTER TABLE `basereseau`
  ADD CONSTRAINT `basereseau_ibfk_1` FOREIGN KEY (`lienclt`) REFERENCES `client` (`id_clt`) ON DELETE CASCADE ON UPDATE CASCADE,
  ADD CONSTRAINT `basereseau_ibfk_10` FOREIGN KEY (`lienmat2`) REFERENCES `materiel2` (`id_mat2`) ON DELETE CASCADE ON UPDATE CASCADE,
  ADD CONSTRAINT `basereseau_ibfk_11` FOREIGN KEY (`lienmat3`) REFERENCES `materiel3` (`id_mat3`) ON DELETE CASCADE ON UPDATE CASCADE,
  ADD CONSTRAINT `basereseau_ibfk_12` FOREIGN KEY (`lienmat4`) REFERENCES `materiel4` (`id_mat4`) ON DELETE CASCADE ON UPDATE CASCADE,
  ADD CONSTRAINT `basereseau_ibfk_13` FOREIGN KEY (`lienrmqclt`) REFERENCES `rmqclt` (`id_rmqclt`) ON DELETE CASCADE ON UPDATE CASCADE,
  ADD CONSTRAINT `basereseau_ibfk_14` FOREIGN KEY (`lienrmqint`) REFERENCES `rmqint` (`id_rmqint`) ON DELETE CASCADE ON UPDATE CASCADE,
  ADD CONSTRAINT `basereseau_ibfk_15` FOREIGN KEY (`lienimg`) REFERENCES `images` (`id_img`) ON DELETE CASCADE ON UPDATE CASCADE,
  ADD CONSTRAINT `basereseau_ibfk_2` FOREIGN KEY (`lienbt`) REFERENCES `baseteams` (`Matricule`) ON DELETE CASCADE ON UPDATE CASCADE,
  ADD CONSTRAINT `basereseau_ibfk_3` FOREIGN KEY (`lienbt2`) REFERENCES `baseteams2` (`Matricule2`) ON DELETE CASCADE ON UPDATE CASCADE,
  ADD CONSTRAINT `basereseau_ibfk_4` FOREIGN KEY (`lienbt3`) REFERENCES `baseteams3` (`Matricule3`) ON DELETE CASCADE ON UPDATE CASCADE,
  ADD CONSTRAINT `basereseau_ibfk_5` FOREIGN KEY (`lienbt4`) REFERENCES `baseteams4` (`Matricule4`) ON DELETE CASCADE ON UPDATE CASCADE,
  ADD CONSTRAINT `basereseau_ibfk_6` FOREIGN KEY (`liencom`) REFERENCES `communication` (`id_com`) ON DELETE CASCADE ON UPDATE CASCADE,
  ADD CONSTRAINT `basereseau_ibfk_7` FOREIGN KEY (`liendroitinf`) REFERENCES `droitinfo` (`id_droitinf`) ON DELETE CASCADE ON UPDATE CASCADE,
  ADD CONSTRAINT `basereseau_ibfk_8` FOREIGN KEY (`lienint`) REFERENCES `intervention` (`Numcacao`) ON DELETE CASCADE ON UPDATE CASCADE,
  ADD CONSTRAINT `basereseau_ibfk_9` FOREIGN KEY (`lienmat`) REFERENCES `materiel` (`id_mat`) ON DELETE CASCADE ON UPDATE CASCADE;
----------------------------------------------------------------------
Voila toute mes tables sont faites comme sa si vous voyez pourquoi je ne peut pas requeté dessus merci de me lindiquer c'est super important
0
cs_vinz78 Messages postés 207 Date d'inscription jeudi 24 mai 2007 Statut Membre Dernière intervention 24 juillet 2007
14 juin 2007 à 09:27
j'ai mis MATCH FULL a la place de on delete cascade sa change rien =/
0
cs_vinz78 Messages postés 207 Date d'inscription jeudi 24 mai 2007 Statut Membre Dernière intervention 24 juillet 2007
15 juin 2007 à 14:28
alors ?
0