mysql - SQL - phpmyadmin - Foreign Key errno: 150 -
i seen many topics have same issue me no 1 had answer case.
i've made model , sql script software. issue have errno: 150 foreign key in phpmyadmin. checked, both keys have same type issue still here.
can me resolve issue please ? had :
#1005 - can't create table `candidathlon`.`#sql-21ac_3b` (errno: 150"foreign key constraint incorrectly formed")
with request :
alter table participer_a add constraint fk_participer_a_dateevenement foreign key (dateevenement) references evenement(dateevenement)
this tables have problem :
create table evenement( numevenement int (11) auto_increment not null , nomevenement varchar (25) not null , dateevenement date not null , primary key (numevenement ,dateevenement ) , index (nomevenement) )engine=innodb; create table candidat( datenaissance date not null , numtelport varchar (25) not null , numtelfixe varchar (25) not null , adresse varchar (25) not null , trouverentreprise bool not null , inscritcfa bool not null , numpersonne int not null , numstatut int not null , numville int not null , dateapprenti date , numinstit int not null , primary key (numpersonne ) , index (trouverentreprise ,inscritcfa ) )engine=innodb; create table participer_a( participeevent bool not null , commentaireevent varchar (100) , souhaiteparticiper bool not null , numpersonne int not null , numevenement int not null , dateevenement date not null , primary key (numpersonne ,numevenement ,dateevenement ) )engine=innodb; alter table participer_a add constraint fk_participer_a_numpersonne foreign key (numpersonne) references personne(numpersonne); alter table participer_a add constraint fk_participer_a_numevenement foreign key (numevenement) references evenement(numevenement); alter table participer_a add constraint fk_participer_a_dateevenement foreign key (dateevenement) references evenement(dateevenement);
what want do:
alter table participer_a add constraint fk_participer_a_dateevenement foreign key (dateevenement) references evenement(dateevenement)
the keys available on table:
primary key (numevenement ,dateevenement ) , index (nomevenement)
neither of these starts dateevenement
, is needed mysql foreign key constraint. need:
index (dateevenement)
i imagine want this:
create table evenement( numevenement int (11) auto_increment not null , nomevenement varchar (25) not null , dateevenement date not null , primary key (numevenement), index (dateevenement) , unique (nomevenement) );
numevenement
unique on every row. auto_increment
primary key in table has such column. guessing name of event unique. date might well, @ minimum, need index on it.
Comments
Post a Comment