Проектирование БД электронного журнала?
Не нужно тут ничего мудрить делай 3 операции и все. Не ориентируйся на количество операций. Смотри на стоимость их выполнения.При POST запросе первым делом удалять все данные по id студенту/предмету и потом записывать данные с запроса (получается 2 операции). 
Представь сколько за год у студента будет оценок и при каждом редактировании их все удалять? А если много пользователей начнут редактировать одновременно? Ждать пока каждый удалит все свои оценки, а потом опять запишет? Имхо дурацкий подход.
Переписывать весь журнал - та ещё затея. С клиента передавать три массива - добавленные оценки, измененные, удаленные.
И не помешает научится отмечать верные ответы в качестве решения.