Лабораторная работа №1
Исходной информацией для построения ER-диаграммы базы данных является следующий перечень атрибутов:
· название фокуса;
· разновидность фокуса (появление/исчезновение, левитация, чтение мыслей, аномальные явления и т. п.);
· сложность фокуса;
· описание эффекта фокуса;
· обучающий видеоролик для фокуса;
· стоимость обучения фокусу;
· фамилия и имя автора фокуса;
· год рождения автора;
· год смерти автора;
· страна проживания автора;
· фамилия иллюзиониста;
· имя и отчество иллюзиониста;
· псевдоним иллюзиониста;
· профессиональный уровень иллюзиониста;
· дата принятия иллюзиониста в клуб;
· дата и время проведения мероприятия;
· адрес мероприятия;
· вид мероприятия (спектакль, концерт, свадьба и т. п.).
Перечисленные атрибуты необходимо сгруппировать по сущностям и связям. Определение сущностей и структуры связей выполняется студентом самостоятельно. В процессе работы исходный список атрибутов может быть уточнен и дополнен.
При определении связей необходимо учесть следующее:
· на каждом мероприятии фокусник показывает определенные трюки;
· если к фокусу прикреплен обучающий видеоролик, то обязательно известно, кто из участников клуба проводит обучение.
Лабораторная работа №3
Реализовать следующие запросы к БД.
1. Получить сведения о фокусах (включая стоимость обучающего видеоролика) указанной разновидности и сложности.
2. Получить перечень фокусов, у которых стоимость обучения не выше указанной.
3. Получить перечень фокусов (без стоимости обучения) с указанием сведений об авторах; упорядочить перечень по фамилии и имени автора. Реализовать запрос в виде представления.
4. Получить список иллюзионистов клуба, принятых в клуб не раньше указанного года и имеющих указанный профессиональный уровень.
5. Получить сведения о мероприятиях, в которых участвовал указанный иллюзионист.
6. Получить сведения о пятерке самых популярных фокусов клуба (популярность определяется количеством мероприятий, на которых демонстрировался фокус, независимо от исполнителя). Реализовать запрос в виде представления.
7. Получить статистические сведения о количестве выездов на мероприятия в течение прошедшего месяца с группировкой по фамилии, имени, отчеству и псевдониму иллюзиониста. Реализовать запрос в виде представления:
Фамилия |
Имя |
Отчество |
Псевдоним |
Количество выездов |
… |
… |
… |
… |
… |
… |
… |
… |
… |
… |
8. Получить перечень иллюзионистов, репертуар которых включает указанный фокус.
9. Получить перечень фокусов, не имеющих обучающего видеоролика. Реализовать запрос в виде представления.
Лабораторная работа №4
Реализовать в базе данных следующие функции и хранимые процедуры.
1. Функция, возвращающая сведения о фокусах (включая стоимость обучающего видеоролика) указанной разновидности и сложности. Параметры: разновидность и сложность фокуса.
2. Функция, возвращающая перечень фокусов, у которых стоимость обучения не выше указанной. Параметр: пороговое значение стоимости.
3. Функция, возвращающая список иллюзионистов клуба, принятых в клуб не раньше указанного года и имеющих указанный профессиональный уровень. Параметры: пороговое значение года вступления в клуб, профессиональный уровень иллюзиониста.
4. Функция, возвращающая сведения о мероприятиях, в которых участвовал указанный иллюзионист. Параметры: псевдоним, фамилия, имя, отчество иллюзиониста.
Примечание. Поиск по фамилии, имени и отчеству вести только в том случае, если не указан псевдоним.
5. Функция, возвращающая перечень иллюзионистов, репертуар которых включает указанный фокус. Параметр: название фокуса.
6. Процедура регистрации мероприятия.
Входные параметры: псевдоним, фамилия, имя, отчество, иллюзиониста; характеристики мероприятия; названия трюков, показанных в ходе мероприятия.
Примечание 1. Последний параметр имеет табличный тип данных.
Примечание 2. Если псевдоним не NULL и не пустая строка, то фамилия, имя и отчество иллюзиониста игнорируются при поиске.
Выходной параметр: код завершения процедуры. Возможные значения:
· 0 – процедура завершена успешно;
· 1 – мероприятие добавлено, но некоторые из указанных фокусов не были найдены;
· 2 – ни один из указанных фокусов не зарегистрирован в БД;
· 3 – иллюзионист не зарегистрирован в БД.
7. Процедура добавления автора фокуса.
Входные параметры: название фокуса, сведения об авторе.
Примечание. Если автор уже присутствует в БД, он не добавляется вторично.
Выходной параметр: код завершения процедуры. Возможные значения:
· 0 – процедура завершена успешно;
· 1 – название фокуса указано неверно;
· 2 – для данного фокуса уже указан автор.
Лабораторная работа №6
Реализовать в БД следующие ограничения.
1. Название фокуса, фамилия и имя автора, псевдоним иллюзиониста – уникальные атрибуты.
2. Название фокуса всегда известно.
3. Дата рождения автора фокуса предшествует дате смерти.
4. Дата мероприятия с участием иллюзиониста – более поздняя, чем год вступления иллюзиониста в клуб.
5. Иллюзионист не может получить звание любителя, если в его репертуаре нет определенного количества фокусов средней сложности.
6. Иллюзионист не может получить звание профессионала, если в его репертуаре нет определенного числа сложных фокусов.
7. Обучение более простому фокусу не может стоить дороже, чем обучение более сложному.
Лабораторная работа №7
Пользоваться БД могут администраторы, участники и гости клуба. Необходимо разграничить доступ различным группам пользователей к информации и программным объектам БД.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.