Файл: Лабораторные работы по курсу "Базы данных" (2й модуль 3го курса).doc
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 30.11.2023
Просмотров: 124
Скачиваний: 3
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Отношение "Соревнования" (поля "Идентификатор" (ПК), "Тип", "Место проведения", "Дата проведения", "Ограничения по возрасту").
Отношение "Участие в соревнованиях" ("Соревнование" (ВнК), "Спортсмен" (ВнК), "Результат" (количество завоеванных очков), "Занятое место").
Л.р. №2. Выборка данных. Один из запросов надо написать двумя способами и объяснить, какой из вариантов будет работать быстрее и почему.
Создать упорядоченные списки:
спортсменов с их тренерами;
спортсменов, подходящих для участия в определенных соревнованиях (по возрасту);
спортсменов, участвовавших в соревнованиях текущего года (упорядочить по соревнованию и количеству завоеванных очков);
спортсменов, у которых не указан ни домашний, ни мобильный телефон.
Вывести для каждого соревнования количество участников.
Л.р. №3. Работа с представлениями. Для созданных представлений необходимо проверить с помощью запросов UPDATE, DELETE и INSERT, являются ли они обновляемыми, и объяснить полученный результат.
Представление "Результаты соревнований": соревнование – спортсмен – тренер – результат – занятое место.
Представление "Спортсмены, не участвующие в соревнованиях".
Представление "Рейтинги тренеров". Рейтинг рассчитать как отношение количества спортсменов, занявших в соревнованиях первые три места, к общему количеству спортсменов данного тренера.
Л.р. №4. Изучение операций реляционной алгебры. Необходимо написать на языке SQL запросы, которые реализуют операции реляционной алгебры. Если для демонстрации операций РА недостаточно отношений, созданных во время выполнения работы №1, то следует создать дополнительные отношения.
Вариант 5.
Л.р. №1. Создание и заполнение отношений БД диссертаций.
1. Отношение "Разделы науки" (поля "Шифр" (ПК), "Название раздела").
2. Отношение "Научные направления" (поля "Код" (ПК), "Название", "Раздел науки").
3. Отношение "Авторы" (поле "Идентификатор" (ПК), "ФИО", "Дата рождения", "Пол", "Паспортные данные").
4. Отношение "Диссертации":
Содержимое поля | Тип | Длина | Дес. | Примечание |
Идентификатор | N | 5 | 0 | первичный ключ |
Научное направление | С | 5 | 0 | внешний ключ к таблице "Научные направления" |
Автор | N | 6 | | внешний ключ к таблице "Авторы" |
Название | С | 200 | | обязательное поле |
Тип | C | 15 | | кандидатская или докторская |
Дата защиты | D | | | обязательное поле |
Организация | C | 60 | | обязательное поле |
Дата утверждения | D | | | |
№ выданного диплома | C | 20 | | уникальное поле |
Л.р. №2. Выборка данных. Один из запросов надо написать двумя способами и объяснить, какой из вариантов будет работать быстрее и почему.
Вывести упорядоченные списки:
диссертации по научному направлению "Телекоммуникационные системы и компьютерные сети";
докторские диссертации по разделу "Компьютерные науки";
количество диссертаций по разделам науки, защищенных в текущем году;
научных направлений, по которым нет докторских диссертаций;
авторов, которые защитили кандидатскую и докторскую диссертации по разным направлениям науки.
Л.р. №3. Работа с представлениями. Для созданных представлений необходимо проверить с помощью запросов UPDATE, DELETE и INSERT, являются ли они обновляемыми, и объяснить полученный результат.
Представление "Количественные показатели": раздел науки – научное направление – количество кандидатов наук – количество докторов наук.
Представление "Доктора наук": автор – данные о его кандидатской диссертации – данные о его докторской диссертации.
Представление "Диссертации, с момента защиты которых прошло больше месяца, но диссертация ещё не утверждена".
Л.р. №4. Изучение операций реляционной алгебры. Необходимо написать на языке SQL запросы, которые реализуют операции реляционной алгебры. Если для демонстрации операций РА недостаточно отношений, созданных во время выполнения работы №1, то следует создать дополнительные отношения.
Вариант 6.
Л.р. №1. Создание и заполнение отношений БД научного фонда.
1. Отношение "Научные направления" (поля "Код" (ПК), "Название").
2. Отношение "Ученые" (поля "Идентификатор" (ПК), "ФИО", "Дата рождения", "Ученая степень", "Ученое звание").
3. Отношение "Гранты":
Содержимое поля | Тип | Длина | Дес. | Примечание |
Идентификатор гранта | С | 10 | 0 | первичный ключ |
Научное направление | С | 8 | 0 | внешний ключ к таблице "Научные направления" |
Руководитель | N | 6 | | внешний ключ к таблице "Ученые" |
Название темы | С | 100 | | обязательное поле |
Дата начала | D | | | обязательное поле |
Организация | C | 60 | | обязательное поле |
Дата окончания | D | | | обязательное поле, больше даты начала |
Сумма финансирования | N | 8 | 0 | обязательное поле, больше 0 |
4. Отношение "Участники" (поля "Грант" (ВнК), "Ученый" (ВнК)).
Л.р. №2. Выборка данных. Один из запросов надо написать двумя способами и объяснить, какой из вариантов будет работать быстрее и почему.
Вывести упорядоченные списки:
проектов по научному направлению "Телекоммуникационные системы и сети";
количество грантов по разделам науки, выполняемых в текущем году;
научных направлений, по которым не выдано ни одного гранта;
ученых, которые являются руководителем одного гранта и участником другого;
гранты, в которых участвует более 10 человек (не считая руководителя).
Л.р. №3. Работа с представлениями. Для созданных представлений необходимо проверить с помощью запросов UPDATE и INSERT, являются ли они обновляемыми, и объяснить полученный результат.
Представление "Количественные показатели": научное направление – количество грантов – общая сумма финансирования.
Представление "Участники и руководители": ФИО – шифр гранта – даты начала и завершения – название темы – отношение к гранту (руководитель или исполнитель).
Представление "Руководители текущих грантов".
Л.р. №4. Изучение операций реляционной алгебры. Необходимо написать на языке SQL запросы, которые реализуют операции реляционной алгебры. Если для демонстрации операций РА недостаточно отношений, созданных во время выполнения работы №1, то следует создать дополнительные отношения.
Вариант 7.
Л. р. №1. Создание и заполнение отношений БД собственников квартир.
Отношение "Адреса" (поля "Номер здания" (ПК), "Название улицы", "Номер дома").
Отношение "Собственники" (поля "Идентификатор" (ПК), "ФИО", "Дата рождения", "Пол").
Отношение "Документы" (поля "Владелец" (ВнК), "Тип документа", "Серия документа", "Номер документа", "Кем и когда выдан").
Отношение "Владение":
Содержимое поля | Тип | Длина | Дес. | Примечание |
Владелец | N | 6 | 0 | внешний ключ к таблице "Собственники" |
Номер здания | N | 6 | 0 | внешний ключ к таблице "Адреса" |
Номер квартиры | N | 4 | | обязательное поле |
Доля | С | 8 | | часть квартиры, которой он владеет (например, 1, 1/3, 0.25 и т.д.) |
Начало владения | D | | | обязательное поле |
Окончание владения | D | | | |
Л.р. №2. Выборка данных. Один из запросов надо написать двумя способами и объяснить, какой из вариантов будет работать быстрее и почему.
Создать упорядоченные списки:
единоличных владельцев помещений (доля которых равна 1) с указанием адреса квартиры, которой он владеет;
собственников с перечнем их документов (в том числе тех, у которых нет документов);
квартир, у которых более 10 собственников;
текущих собственников квартир по улице Чкалова;
квартир, у которых в настоящее время нет собственников.
Л.р. №3. Работа с представлениями. Для созданных представлений необходимо проверить с помощью запросов UPDATE, DELETE и INSERT, являются ли они обновляемыми, и объяснить полученный результат.
Представление "Квартиры, в числе собственников которых в настоящее время есть несовершеннолетние дети".
Представление "Количество собственников по домам": номер здания – улица – номер дома – количество текущих собственников.
Представление "Количество текущих собственников" по всем квартирам, включая квартиры, у которых нет собственников.
Л.р. №4. Изучение операций реляционной алгебры. Необходимо написать на языке SQL запросы, которые реализуют операции реляционной алгебры. Если для демонстрации операций РА недостаточно отношений, созданных во время выполнения работы №1, то следует создать дополнительные отношения.
Вариант 8.
Л.р. №1. Создание и заполнение отношений БД пункта проката автомобилей.
1. Отношение "Клиенты" (поля ID (ПК), "ФИО", "Дата получения прав", "№ водительского удостоверения", "Дата получения вод.удостоверения").
2. Отношения "Модели" (поля "Название модели" (ПК), "Марка", " Цена за день аренды", "Вместимость", "Тип кузова").
3. Отношение "Автомобили" (поля "Госномер" (ПК), "Год выпуска", "Цвет", "Состояние", "Пробег", "Модель" (ВнК)).
4. Отношение "Договоры на аренду":
Содержание поля | Тип | Длина | Дес. | Примечания |
ID | N | 4 | 0 | первичный ключ |
ID клиента | N | 5 | 0 | обязательное поле (внеш. ключ к Клиентам) |
ID автомобиля | С | 10 | | обязательное поле (внеш. ключ к Автомобилям) |
Дата заключения договора | D | | | обязательное поле |
Длительность договора | N | 3 | 0 | обязательное поле, в днях |
Стоимость договора | N | 10 | 2 | обязательное поле |
Дата возврата автомобиля | D | | | необязательное поле |
Примечания | С | 100 | | |
Л.р. №2. Выборка данных. Один из запросов надо написать двумя способами и объяснить, какой из вариантов будет работать быстрее и почему.
Проверить, что к моменту окончания договора не истек срок действия водительского удостоверения клиента (оно действует в течение 10 лет). Выдать упорядоченные списки:
автомобилей, находящихся в прокате;
клиентов, которые брали автомобили на прокат более 10 раз за последний год;
автомобилей, которые не находятся в прокате, стоимостью проката менее 2000 р. в день и вместимостью не менее 4 человек.
Проверить, что для возвращенных из проката автомобилей длительность договора равна разнице между датой заключения и датой возврата минус 1.
Л.р. №3. Работа с представлениями. Для созданных представлений необходимо проверить с помощью запросов UPDATE, DELETE и INSERT, являются ли они обновляемыми, и объяснить полученный результат.
Представление "Автомобили, не пользующиеся спросом" (которые не брали напрокат в течение последнего месяца).
Представление "Занятость автомобилей": модель – номер автомобиля – количество договоров – общая сумма по договорам.
Представление "Автомобили без простоя" (которые были взяты напрокат в день возврата из предыдущего проката).
Л.р. №4. Изучение операций реляционной алгебры. Необходимо написать на языке SQL запросы, которые реализуют операции реляционной алгебры. Если для демонстрации операций РА недостаточно отношений, созданных во время выполнения работы №1, то следует создать дополнительные отношения.
Вариант 9.
Л. р. №1. Создание и заполнение отношений БД библиотеки.
Отношение "Рубрикатор" (поля "Шифр" (ПК) и "Название рубрики").
Отношение "Каталог книг":
Содержимое поля | Тип | Длина | Дес. | Примечание |
Рубрикатор | C | 8 | | внешний ключ к таблице "Рубрикатор" |
Шифр издания | С | 10 | | первичный ключ |
Название | С | 80 | | обязательное поле |
Авторы | C | 50 | | |
Издательство | C | 25 | | обязательное поле |
Год издания | N | 4 | 0 | обязательное поле |
Количество страниц | N | 4 | 0 | |
Примечание | C | 40 | | по умолчанию – учебник |