Probleme sur les clef etrangeres
Résolu
aaidez moi a creer une table qui est une relation de deux table existantes. en mode console de mysql on me dit ''imposible d'ajouter les contraintes d'index externes.
3 réponses
-
ContributeurJe pense que tu dois spécifier le nom des autres tables, et les noms des clés correspondantes dans les autres tables :
create table livrer( id_liv smallint auto_increment, id_four int, id_mat int, nb_mat int; primary key(id_liv), constraint fk_livrer1 foreign key(id_four) REFERENCES autretable1 (cle1) constraint fk_livrer2 foreign key(id_mat) REFERENCES autretable2(cle2) )engine=innodb;
-
-
-
create table fournisseur(
id_four smallint unsigned auto_increment,
nom vachar(100) not null,
prenom vachar(100) not null,
d_nais date,
primary key(id_four)
)engine=innodb;
&
create tabe materiel(
id_mat smallint unsigned auto_increment,
label_mat vachar(50), not null
type_mat varchar(100),
primary key(id_mat)
)engine=innodb;
donc la relation des deux table au dessus recoit la concatenation de leur clef primaire que je fais ci-dessus
create table livrer(
id_liv smallint unsigned auto_increment,
id_mat int,
id_four int,
nb_mat int(50)
primary key(id_liv),
constraint fk_fourneur foreign key(id_four) references fournisseur(id_four),
constraint fk_materiel foreign key(id_mat) references materiel(id_mat)
)engine=innodb;
"imposssible d'ajouter les contrainte d'index externe" dit msql -
-
-