Есть много проходимых способов сделать это. Я упоминаю 2 способа сделать это.
Метод 1:
Вы можете создать свою таблицу курсов следующим образом.
Create table courses(
id int(10) not null primary key,
title varchar(25),
content varchar(255)
);
и теперь создайте еще одну таблицу для сопоставления предпосылок.
create table prerequisites(
course_id int(10),
prerequisite_id int(10),
foreign key (course_id) references courses(id),
foreign key (prerequisite_id) references courses(id)
)
Метод 2:
Еще один способ сделать это - добавить новый столбец в таблицу курсов для обязательных курсов. Хотя вы не можете добавить ограничение внешнего ключа таким способом, но вы можете управлять этим программно.
Create table course(
id int(10) not null primary key,
prerequisites varchar(250),
title varchar(25),
content varchar(255)
)