Загрузка данных


Вот короткий вариант ответа для сдачи работы:
a. Почему время начала входит в UID объекта ASSIGNMENT?
Потому что в одну и ту же дату (Date of Exam) один и тот же экзамен или аудитория могут использоваться несколько раз в течение дня (например, в 9:00 и в 12:00). Без # Start Time база данных не позволила бы создать больше одной записи на один день.
b. Три ограничения по времени и условная неперемещаемость
 * End Time > Start Time (время окончания строго позже начала).
   * Неперемещаемость: Нет (обычное правило проверки данных).
 * Запрет пересечения сессий в аудитории (аудитория не может быть занята двумя экзаменами одновременно).
   * Неперемещаемость: Да (нельзя переместить назначение на время, которое уже занято другой аудиторией).
 * Запрет редактирования прошедших экзаменов (нельзя менять время/аудиторию у уже состоявшегося экзамена).
   * Неперемещаемость: Да (после наступления даты/времени запись блокируется для изменений).