Пытаюсь "наваять" свою БД по теме "Деканат". Есть свои наработки (схема в приложении). Есть и на этом форуме материал для ознакомления (напр.:
http://www.sql.ru/forum/849101/funkcii-i-formy?mid=10697234#10697234). Для простенькой контрольной/лабораторной не плохо.
Проблема в том, что учебного плана, как такового, у меня нет. В смысле таблицы... А работать придётся с информацией о тех или иных оценках в каком-то году, в той или иной специальности т.д. Можно, конечно запросом, этот текущий учебный план узнать, но как его сохранять?Однако при изменении/удалении записи о предмете, например, данные о сдаче этого предмета студентами изменятся.
То есть, как я понимаю, должна присутствовать таблица - "Личное дело", где будет вся информация храниться о студенте и всех заданных предметах и полученных оценках.
Вижу несколько выходов:
1. В начале сессии создавать запросом таблицу "учебный план" для каждого студента, с учетом его специальности. Где, кроме информации о нём, будет находится список предметов для сдачи. В последствии, после сессии - проставляем оценки и храним в архиве.
2. В моей схеме - запретить удаление. - По моему геморрой: и не удалить ошибочные данные, и при изменении, например, часов выделенных на предмет, придётся создавать новую запись с тем же названием предмета и другим количеством часов и переопределять связи предмета с учащимися...
3. Для текущих записей использовать мою текущую БД. Летом архивировать данные в отдельную БД.
Возможно, все три варианта выглядят полным бредом, но хотелось бы узнать мнение профессионалов. Как теоретиков, так и практиков. Возможно, где то применяется (и с успехом) что-то ещё.
http://www.sql.ru/forum/1111030/arhitektura-bd-dekanat