这是我的SQL查询的一小部分,我所指的外键不为空并且具有相同的类型,我哪里出错了?
Create table `Time` (
`Year` year not null,
`Semester` char(2) not null,
primary key (`Year`, `Semester`)
);
Create table `Allocation` (
`Student_ID` int unsigned not null,
`Time_Year` year not null,
`Time_Semester` char(2) not null,
primary key (`Timeslot_Year`, `Timeslot_Semester`, `Student_ID`),
constraint fk_year_allocation foreign key (`Time_Year`) references `Time`(`Year`),
constraint fk_semester_allocation foreign key (`Time_Semester`) references `Time`(`Semester`),
);
除了修复拼写错误,例如第二个表中的结尾逗号和
primary key (`Timeslot_Year`, `Timeslot_Semester`),
应该是
primary key (`Time_Year`, `Time_Semester`),
您需要在
Semester
列上添加索引