Вариант 2: Магазин: Продажа товаров.
Магазин ведет учет проданных товаров. Требуется обеспечить хранение и обработку следующих данных:
Информация о персональных данных покупателей с указанием, как минимум, ФИО, даты рождения, пола и т.п.
Сведения о товарах: название, цена, срок годности, признак доступности на складе, категория товара и т.п.
Информация о продаже товаров. Покупатель единовременно может приобрести любое количество товаров, которые есть в наличии на складе.
Порядок выполнения работы:
Постройте отношение в 1НФ.
Сформируйте минимальное множество функциональных зависимостей в отношении.
Определите потенциальные ключи, определите первичные ключи отношений.
Избавьтесь от частичных зависимостей и переведите все отношения в 2НФ.
Определите существование транзитивных зависимостей в отношении и переведите все отношения в 3НФ. Находятся ли полученные отношения в НФБК?
Нарисуйте ER-диаграмму предметной области.
Создайте базу данных в MS SQL Server: создайте и именуйте таблицы БД; именуйте атрибуты таблиц и выберите типы данных; определите первичные и внешние ключи таблиц и выберите типы данных. При необходимости определите ограничения атрибутов и значения по умолчанию.
Создайте диаграмму БД. Определите правила поддержания ссылочной целостности системы ключей.
Наполните БД тестовыми данными. Приведите примеры запросов на добавление, модификацию и удаление данных.
Создайте ограничение, запрещающее продать покупателю товар, не доступный на складе. Реализуйте ограничение через скалярную функцию.
Создайте триггер на таблицу с товарами: при обновлении полей срока годности поле "С" должно быть менее поля «До» либо иметь неопределенные значения. Определите стратегию такого изменения: запрет на обновление, либо использование неопределенных значений, либо другое.
Создайте представление по результатам продаж товаров с указанием сведений о товарах и покупателях.
Создайте хранимые процедуры (ХП):
По коду покупателя вернуть все товары, приобретенные в указанный период времени.
Вывести список покупателей, которые когда-либо приобретали товар с указанным названием. Решить задачу с использованием 1) операции соединения и 2) подзапроса.
Вывести отсортированный список покупателей с рассчитанной суммой потраченных на покупки денег.
Модифицируйте предыдущую ХП, чтобы в указанном списке остались только те покупатели, которые приобрели товаров более чем на N рублей.
Вывести список покупателей, которые хотя бы однажды покупали товары указанной категории.
Разработать в PowerPoint презентацию базы данных. Подготовить доклад о проделанной работе длительностью 7 минут.
Вариант 3: Университет. Научное руководство.
Университет ведет учет научных руководителей студентов. Требуется обеспечить хранение и обработку следующих данных:
Информация о персональных данных студентов и преподавателей с указанием, как минимум, ФИО, даты рождения, пола и т.п.
По каждому преподавателю известны его должность и период трудового контракта.
По каждому студенту известны его специальность и научный руководитель. У студента может быть только один научный руководитель, либо не быть вообще.
Порядок выполнения работы:
Постройте отношение в 1НФ.
Сформируйте минимальное множество функциональных зависимостей в отношении.
Определите потенциальные ключи, определите первичные ключи отношений.
Избавьтесь от частичных зависимостей и переведите все отношения в 2НФ.
Определите существование транзитивных зависимостей в отношении и переведите все отношения в 3НФ. Находятся ли полученные отношения в НФБК?
Нарисуйте ER-диаграмму предметной области.
Создайте базу данных в MS SQL Server: создайте и именуйте таблицы БД; именуйте атрибуты таблиц и выберите типы данных; определите первичные и внешние ключи таблиц и выберите типы данных. При необходимости определите ограничения атрибутов и значения по умолчанию.
Создайте диаграмму БД. Определите правила поддержания ссылочной целостности системы ключей.
Наполните БД тестовыми данными. Приведите примеры запросов на добавление, модификацию и удаление данных.
Создайте ограничение, запрещающее назначать научным руководителем преподавателя с неактуальным в настоящий момент трудовым контрактом. Реализуйте ограничение через скалярную функцию.
Создайте триггер на таблицу с преподавателями: при обновлении полей срока трудового контракта поле "С" должно быть менее поля «До» либо иметь неопределенные значения. Определите стратегию такого изменения: запрет на обновление, либо использование неопределенных значений, либо другое.
Создайте представление по результатам назначения научных руководителей с указанием сведений о студентах и преподавателях.
Создайте хранимые процедуры (ХП):
По коду преподавателя вернуть всех студентов, кому он назначен научным руководителем.
Вывести список преподавателей, которые когда-либо были научными руководителями студентов указанной специальности. Решить задачу с использованием 1) операции соединения и 2) подзапроса.
Вывести отсортированный список преподавателей с указанием числа студентов, для которых он является научным руководителем.
Модифицируйте предыдущую ХП, чтобы в указанном списке остались только те преподаватели, которые осуществляют руководство более чем над N студентами.
Вывести список преподавателей, которые хотя бы однажды были научными руководителями студентов указанной специальности.
Разработать в PowerPoint презентацию базы данных. Подготовить доклад о проделанной работе длительностью 7 минут.
Вариант 4: Учебный центр; Аттестация слушателей.
Учебный центр ведет учет результатов аттестации слушателей. Требуется обеспечить хранение и обработку следующих данных:
Информация о персональных данных преподавателей и слушателей с указанием, как минимум, ФИО, даты рождения, пола и т.п.
Каждый преподаватель назначается для проведения одной или нескольких учебных дисциплин.
По каждой дисциплине закрепленный преподаватель может аттестовать произвольное число слушателей. Во время аттестации преподаватель указывает балл слушателя (по пятибалльной шкале) и дату, время аттестации.
Порядок выполнения работы:
Постройте отношение в 1НФ.
Сформируйте минимальное множество функциональных зависимостей в отношении.
Определите потенциальные ключи, определите первичные ключи отношений.
Избавьтесь от частичных зависимостей и переведите все отношения в 2НФ.
Определите существование транзитивных зависимостей в отношении и переведите все отношения в 3НФ. Находятся ли полученные отношения в НФБК?
Нарисуйте ER-диаграмму предметной области.
Создайте базу данных в MS SQL Server: создайте и именуйте таблицы БД; именуйте атрибуты таблиц и выберите типы данных; определите первичные и внешние ключи таблиц и выберите типы данных. При необходимости определите ограничения атрибутов и значения по умолчанию.
Создайте диаграмму БД. Определите правила поддержания ссылочной целостности системы ключей.
Наполните БД тестовыми данными. Приведите примеры запросов на добавление, модификацию и удаление данных.
Создайте ограничение, запрещающее назначать преподавателю более 4 дисциплин. Реализуйте ограничение через скалярную функцию.
Создайте триггер на таблицу с персональными данными: при обновлении поля «Отчество» проверять его окончание. Если поле «Пол» не заполнено и окончание отчества равно «%вна», то пол назначить «женский», если окончание отчества равно «%вич», то пол назначить «мужской».
Создайте представление по результатам аттестации с указанием сведений о слушателях, дисциплинах, результатах аттестации.
Создайте хранимые процедуры (ХП):
По коду преподавателя вернуть всех его слушателей, получивших положительную аттестацию.
Вывести список слушателей, которые когда-либо аттестовались у указанного преподавателя. Решить задачу с использованием 1) операции соединения и 2) подзапроса.
Вывести отсортированный список преподавателей с указанием среднего балла по результатам проведенных аттестаций.
Модифицируйте предыдущую ХП, чтобы в указанном списке остались только те преподаватели, средний балл которых превышает N.
Вывести список слушателей, которые хотя бы однажды аттестовались по указанной дисциплине.
Разработать в PowerPoint презентацию базы данных. Подготовить доклад о проделанной работе длительностью 7 минут.
Вариант 5: Автоцентр; Ремонт автомобилей.
Автоцентр ведет учет выполненных ремонтных работ автомобилей. Требуется обеспечить хранение и обработку следующих данных:
Информация о персональных данных механиков с указанием, как минимум, ФИО, даты рождения, пола и т.п.
Сведения об автомобилях: регистрационный номер, пробег, модель автомобиля и т.п.
Реестр предоставляемых ремонтных работ.
Информация о проводимых ремонтных работах с указанием автомобиля, механика, сроках выполнения работ, стоимости. Всякий раз для выполнения ремонтных работ для автомобиля назначается только один механик.
Порядок выполнения работы:
Постройте отношение в 1НФ.
Сформируйте минимальное множество функциональных зависимостей в отношении.
Определите потенциальные ключи, определите первичные ключи отношений.
Избавьтесь от частичных зависимостей и переведите все отношения в 2НФ.
Определите существование транзитивных зависимостей в отношении и переведите все отношения в 3НФ. Находятся ли полученные отношения в НФБК?
Нарисуйте ER-диаграмму предметной области.
Создайте базу данных в MS SQL Server: создайте и именуйте таблицы БД; именуйте атрибуты таблиц и выберите типы данных; определите первичные и внешние ключи таблиц и выберите типы данных. При необходимости определите ограничения атрибутов и значения по умолчанию.
Создайте диаграмму БД. Определите правила поддержания ссылочной целостности системы ключей.
Наполните БД тестовыми данными. Приведите примеры запросов на добавление, модификацию и удаление данных.
Создайте ограничение, запрещающее вновь принимать в ремонт автомобиль, если в течении указанного периода обслуживания он уже принят к обслуживанию.
Создайте триггер на таблицу со сведениями о ремонте: при обновлении полей периода обслуживания автомобиля поле "С" должно быть менее поля «До» либо иметь неопределенные значения. Определите стратегию такого изменения: запрет на обновление, либо использование неопределенных значений, либо другое.
Создайте представление по результатам выполнения ремонтных работ с указанием сведений об автомобиле, механике, периоде обслуживания, стоимости работ.
Создайте хранимые процедуры (ХП):
По коду автомобиля вернуть все проведенные ремонтные работы за определенный период.
Вывести список механиков, которые когда-либо обслуживали автомобили указанной марки. Решить задачу с использованием 1) операции соединения и 2) подзапроса.
Вывести отсортированный список механиков с указанием общей стоимости выполненных работ.
Модифицируйте предыдущую ХП, чтобы в указанном списке остались только те механики, которые выполнили работ более чем на N рублей.
Вывести список предоставляемых ремонтных работ, которые хотя бы однажды предоставлялись для автомобилей указанной модели.
Разработать в PowerPoint презентацию базы данных. Подготовить доклад о проделанной работе длительностью 7 минут.
Вариант 6: Дворец культуры; Проведение мероприятий.
Дворец культуры ведет учет результатов конкурсов художественной самодеятельности. Требуется обеспечить хранение и обработку следующих данных:
Информация о персональных данных участников конкурсов и судей с указанием, как минимум, ФИО, даты рождения, пола и т.п.
О каждом конкурсе известно его название и дата проведения. Для каждого конкурса назначается один или несколько судей.
Каждый судья персонально оценивает выступления участников и выставляет им баллы по 100-бальной шкале. Итоговый результат участника в конкурсе вычисляется как среднее арифметическое по всем судейским оценкам. Число судей для каждого участника в рамках одного конкурса может различаться.
Порядок выполнения работы:
Постройте отношение в 1НФ.
Сформируйте минимальное множество функциональных зависимостей в отношении.
Определите потенциальные ключи, определите первичные ключи отношений.
Избавьтесь от частичных зависимостей и переведите все отношения в 2НФ.
Определите существование транзитивных зависимостей в отношении и переведите все отношения в 3НФ. Находятся ли полученные отношения в НФБК?
Нарисуйте ER-диаграмму предметной области.
Создайте базу данных в MS SQL Server: создайте и именуйте таблицы БД; именуйте атрибуты таблиц и выберите типы данных; определите первичные и внешние ключи таблиц и выберите типы данных. При необходимости определите ограничения атрибутов и значения по умолчанию.
Создайте диаграмму БД. Определите правила поддержания ссылочной целостности системы ключей.
Наполните БД тестовыми данными. Приведите примеры запросов на добавление, модификацию и удаление данных.
Создайте ограничение, запрещающее назначать на каждый конкурс более 3 судей. Реализуйте ограничение через скалярную функцию.
Создайте триггер на таблицу с результатами конкурса, ограничивающий оценку человеком своего собственного выступления.
Создайте представление по результатам конкурса с указанием участников, судей и результатов.
Создайте хранимые процедуры (ХП):
По коду участника определить все конкурсы, в которых он участвовал.
Вывести список участников, которые когда-либо оценивались указанным человеком (в качестве судьи). Решить задачу с использованием 1) операции соединения и 2) подзапроса.
Вывести отсортированный список участников с указанием среднего балла по всем конкурсам.
Модифицируйте предыдущую ХП, чтобы в указанном списке остались только те участники, которые набрали более N баллов.
Вывести список участников, которым хотя бы однажды судья выставил максимальный балл.
Разработать в PowerPoint презентацию базы данных. Подготовить доклад о проделанной работе длительностью 7 минут.