Опорная идея
База данных хранит факты, поэтому ее структура должна защищать смысл. Ученик изучает таблицы, первичные и внешние ключи, индексы, связи один-ко-многим и многие-ко-многим, транзакции и миграции.
Пример учебного портала: таблицы users, courses, lessons, enrollments, progress. Если связи заданы правильно, невозможно записать прогресс к несуществующему уроку или потерять историю обучения.