Het probleem is te wijten aan het feit dat de externe sleutel, subj_code
, maakt deel uit van een meerdere kolommen primaire sleutel (PK) in de tabel waarnaar wordt verwezen enrolment
:
primary key (stud_id, subj_code, semester, year)
waar deze kolom (subj_code
) is niet de meest linkse .
Tabel student
heeft dit probleem niet omdat de externe sleutelkolom stud_id
is de meest linkse kolom van de PK in de tabel waarnaar wordt verwezen.
Om dit op te lossen, kunt u een nieuwe index maken voor de kolom waarnaar wordt verwezen:
ALTER TABLE enrolment ADD INDEX subj_code_idx (subj_code);
Opmerking: U moet hetzelfde doen voor de tabel waarnaar wordt verwezen grade
in de andere externe sleutel.