Sie haben einen zusammengesetzten Primärschlüssel, also brauchen Sie einen zusammengesetzten Fremdschlüssel:
CREATE TABLE Prerequisite_to(
infs CHAR(4),
course_number CHAR(3),
PRIMARY KEY (infs,course_number),
FOREIGN KEY (infs, course_number) REFERENCES Class(infs, course_number)
);
Nur fürs Protokoll, ich bin kein Fan von zusammengesetzten Primärschlüsseln. Ich denke auch, dass Voraussetzungen zwei brauchen Kurs Referenzen. Also:
CREATE TABLE Classes (
class_id int auto_increment primary key,
infs CHAR(4) NOT NULL,
course_number CHAR(3) NOT NULL,
unique (infs, course_number)
);
CREATE TABLE Prerequisites (
preresequisite_id int auto_increment primary key,
class_id int,
prerequisite_class_id int,
FOREIGN KEY (class_id) REFERENCES Classes(class_id),
FOREIGN KEY (prerequisite_class_id) REFERENCES Classes(class_id)
);