В рамках работы необходимо:
Пользуясь разработанной в предыдущей работе физической моделью БД сгенерировать скрипт создания таблиц базы данных на языке SQL в стандарте SQL 92. В таблицах должны генерироваться первичные ключи и связи, а также содержаться проверки (CHECK CONSTRAINTS) аналогичные проверкам из первой лабораторной работы.
Дополнительно необходимо хранить информацию о грантах. Имеется список возможных грантов (с указанием названия гранта, срока проведения конкурса и размера гранта). Работа может претендовать на получение одного или нескольких грантов, а затем (при удаче) получить его. Необходимые колонки/таблицы нужно разработать и добавить в скрипт вручную, не пользуясь возможностями Power Designer.
Внести необходимые исправления для успешного выполнения скрипта в СУБД SQLite.
Добавить в полученный скрипт команды INSERT для заполнения.
Сгенерировать таблицы, заполненные тестовыми значениями.
Лабораторная работа №4
Кроме таблиц, необходимо разработать следующие представления (view):
|
|
Работы, которые претендовали более чем на один грант, но так ничего и не получили.
5. Студент, который всегда пишет свои работы под руководством одного и того же преподавателя, и написал уже несколько работ (вывести всех таких студентов)
6. Три самых талантливых студента, работы которых выиграли наибольшее количество грантов.
А также реализовать следующие запросы на модификацию данных:
Работа №123 выиграла грант, на который претендовала — проделать соответствующее изменение в базе данных.
7. Удалить конференции, которые прошли более года назад.
Лабораторная работа №5
Используя триггеры, обеспечить поддержку целостности данных в ранее разработанной базе. Необходимо реализовать не менее двух триггеров, аналогичных внешним ключам, а также следующие триггеры:
Триггер, не позволяющий указывать участие работы в такой конференции, срок которой уже прошел.
8. Триггер, контролирующий, что одна и та же работа не может участвовать более чем в трех конференциях.
Вариант 18
Лабораторная работа №1
Разработать ER-диаграмму, а затем, пользуясь средствами СУБД Microsoft Access, создать базу данных для информационной системы ВУЗа. База данных должна позволять хранение следующей информации:
1. Список кафедр с информацией о том, какие преподаватели работают на каждой кафедре. Для преподавателя необходимо хранить ФИО, должность, звание, оклад, домашний телефон, мобильный телефон, список предметов, по которым преподаватель в состоянии вести занятия.
2. Список предметов, которые могут появляться в расписании.
3. Список групп, с информацией о том, какие предметы в текущем семестре изучает та или иная группа. В разных группах по одному и тому же предмету может быть запланировано различное количество лекционных часов и часов, отведенных на лабораторные занятия. Для каждого предмета должно быть указано, преподаватель какой кафедры должен его вести.
|
|
4. Расписание занятий. Для каждого занятия, помимо всего прочего, необходимо указать день недели, номер пары, вид недели (верхняя/нижняя).
Не требуется хранить информацию о лабораторных работах, студентах и полученных ими оценках. База данных должна содержать следующие ограничения целостности:
1. Номер пары не может быть больше восьми.
2. Для заведующего кафедрой обязательно должен быть указан номер мобильного телефона.
Лабораторная работа №2
В рамках работы необходимо:
Реализовать ER-диаграмму, разработанную в первой лабораторной работе, в среде Power Designer.
3. На основе созданной ER-диаграммы сгенерировать физическую модель базы данных.
4. Убедиться, что полученная физическая модель соответствует схеме данных БД Microsoft Access из первой лабораторной работы.
Лабораторная работа №3
В рамках работы необходимо:
Пользуясь разработанной в предыдущей работе физической моделью БД сгенерировать скрипт создания таблиц базы данных на языке SQL в стандарте SQL 92. В таблицах должны генерироваться первичные ключи и связи, а также содержаться проверки (CHECK CONSTRAINTS) аналогичные проверкам из первой лабораторной работы.
Дополнительно необходимо хранить информацию об имеющихся аудиториях. Некоторые аудитории предназначены для чтения лекций, другие — для проведения лабораторных занятий. Аудитория может быть «общей», или находящейся в распоряжении конкретной кафедры. Необходимые колонки/таблицы нужно разработать и добавить в скрипт вручную, не пользуясь возможностями Power Designer.
Внести необходимые исправления для успешного выполнения скрипта в СУБД SQLite.
Добавить в полученный скрипт команды INSERT для заполнения таблиц примером данных.
Сгенерировать таблицы, заполненные тестовыми значениями.
Лабораторная работа №4
Необходимо разработать следующие представления (view):
Группы, у которых должен проводиться какой-либо предмет, но соответствующей строки еще нет в расписании.
5. Три самые загруженные лекционные аудитории, в которых проводится наибольшее количество занятий.
6. Информация о «потоковых» лекциях, когда в одной и той же аудитории нескольким группам одновременно читается лекция.
А также реализовать следующие запросы на модификацию данных:
7. Удаление информации об уволившемся преподавателе Иванове А.Б
8. Повышение зарплаты преподавателю Петрову В.Г. на 40 процентов, и изменение его звания с «ассистент» на «старший преподаватель».
Лабораторная работа №5
Используя триггеры, обеспечить поддержку целостности данных в ранее разработанной базе. Необходимо реализовать не менее двух триггеров, аналогичных внешним ключам, а также следующие триггеры:
Триггер, запрещающий преподавателю проводить занятие у группы, если это занятие должен проводить преподаватель другой кафедры.
9. Триггер, запрещающий в расписании назначать группе такое занятие, которое отсутствует в учебном плане данной группы.
Вариант 19