Bonjour tout le monde,
j'ai les 2 tables suivantes:
et
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 +---------------+------------+ | numero_groupe | nom_groupe | +---------------+------------+ | 57 | groupe1 | | 58 | groupe2 | | 59 | groupe3 | +---------------+------------+
le numero_groupe de la 2eme table est une clé etrangere isssue de la 1ere table.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 +----------------+------------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +----------------+------------------+------+-----+---------+-------+ | numero_machine | int(10) unsigned | | MUL | 0 | | | numero_groupe | int(10) unsigned | | MUL | 0 | | +----------------+------------------+------+-----+---------+-------+
Pourtant lorsque je rentre la requete suivante :
je recois le code d'erreur suivant:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 insert into machine_groupe(numero_groupe) select numero_groupe from groupe where nom_groupe='groupe1';
Pourquoi y'a t'il ce message d'erreur?ERROR 1216: Cannot add or update a child row: a foreign key constraint fails
Le fait d'utiliser une clé étrangère ne devrait il pas au contraire ne m'autoriser qu'à importer des numero_groupe issu de la 1ere table? (j'ai peut-être mal saisi le fonctionnement des clés etrangeres autrement)
Merci d'avance!
Partager