Bonjour,
Il y a assez longtemps, on m'avait aidé a mettre en place une architecture où dans une des tables de la BDD, la clé primaire était composée de la paire {clé étrangére d'une table , une colone}. (http://www.developpez.net/forums/d15...e-associative/)
Je souhaiterais remettre en place cette base mais je rencontre un probléme.
Pour l'instant, j'ai déjà ces tables en BDD
Code : 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
 
CREATE TABLE FOUR 
(
    id_four INT(11) NOT NULL,
    nom VARCHAR(25)  NOT NULL,
    CONSTRAINT PRIMARY KEY (id_four)
) ;
 
CREATE TABLE FOUR_CYCLES
(
    id_four INT(11) NOT NULL,
    no_cycle VARCHAR(2) NOT NULL,
    CONSTRAINT PRIMARY KEY (id_four, no_cycle),
    CONSTRAINT FOUR_CYCLE_FOUR_FK FOREIGN KEY (FourId)
    REFERENCES FOUR (FourId)
    ON DELETE CASCADE
) ;
 
CREATE TABLE GATEAUX
(        
    id_gateau INT(11) NOT NULL,
    nom VARCHAR(25) NOT NULL,
    id_four INT(11) NOT NULL,
    no_cycle VARCHAR(2) NOT NULL,
    CONSTRAINT GATEAU PRIMARY KEY (GateauId)
)
Je souhaiterais mettre en place la clé primaire de la table FOUR_CYCLES en clé étrangére dans la table GATEAUX mais c'est là que je rencontre un probléme...
Je fais :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
ALTER TABLE GATEAUX
ADD FOREIGN KEY (id_four, no_cycle)
REFERENCES FOUR_CYCLES(id_four, no_cycle)
ON DELETE CASCADE
Et j'obtiens ce message : "#1452 - Cannot add or update a child row: a foreign key constraint fails".

Quelqu'un sait pourquoi j'obtient ce message et je n'arrive pas ajouter ma clé étrangére?

Merci.