Добавил:
Меня зовут Катунин Виктор, на данный момент являюсь абитуриентом в СГЭУ, пытаюсь рассортировать все файлы СГЭУ, преобразовать, улучшить и добавить что-то от себя Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Информатика / Теория / Базы данных СГЭУ - Курсовое_проектирование_для заочников.docx
Скачиваний:
14
Добавлен:
09.08.2023
Размер:
3.84 Mб
Скачать

Вариант 6

1. В первой главе курсового проекта описать процесс проектирования базы данных. Спроектировать базу данных методом нормализации и методом семантического моделирования для автоматизированной информационной системы для учета компьютерного времени в учебных аудиториях. Студент должен себя зарегистрировать перед работой на компьютере. База данных должна содержать такие сведения о студенте, как курс, группа, специальность, дисциплина, преподаватель, предмет, тип занятия, а также дата, время начала и окончания его работы, которые должны быть сняты с системных часов (см. табл.1)

Таблица 1

Фамилия

Кафедра

Препода­ватель

Специаль­ность

Предмет

Курс

Группа

Тип занятия

Время начала

Время окончания

Дата занятия

Крылов

Экономической информатики

Серов

МЭ

БД

1

1

По расписанию

11:20

13:15

14.01.02

Кузнецов

Экономической истории

Лосева

ПИЭ

БД

1

2

Курсовое проектирование

13-25

15-00

14.01.02

Крылов

Экономической информатики

Серов

МЭ

Информатика

1

1

Самостоя-

тельное

14:25

15:00

16.01.02

Антонова

Высшей математики

Курова

ПИЭ

ИС

5

1

Дипломное проектирование

15:00

18:30

17.01.02

Кузнецов

Экономической истории

Лосева

ПИЭ

Информатика

1

2

Самостоя-

тельное

8:00

9:35

18.01.02

2. Разработать базу данных, таблицы и заполнить их данными. Количество записей о студентах должно быть не менее сорока, список кафедр должен содержать не менее семи наименований, количество компьютерных классов должно быть не менее пяти. Типы занятий в компьютерных классах могут быть следующими: занятие по расписанию, самостоятельное, дипломное проектирование, курсовое проектирование, тестирование.

Предусмотреть в создаваемых таблицах ограничения целостности следующих типов:

  • NOT NULL – для полей, которые будут являться первичными и внешними ключами,

  • PRIMARY KEY – для полей, выбранных в качестве первичных ключей,

  • FOREIGN KEY – для полей, являющихся внешними ключами (создается при построении диаграммы базы данных).

  • CHECK для полей «Время окончания занятия» и «Время начала занятия» мест» (значение первого поля должно быть не меньше значения второго),

  • DEFAULT для поля «Тип занятия» (его значение должно быть «по расписанию»).

3. В третьей главе курсового проекта «Основные команды SQL для извлечения, добавления и изменения данных» выполнить следующие действия и представить их результаты. Создать запросы для определения количество часов по расписанию по заданной кафедре.

    1. Создать запрос для определения количества часов самостоятельной работы студентов определенного преподавателя по заданному предмету.

    2. Определить предмет, которым студенты занимаются самостоятельно наибольшее количество часов.

    3. Изменить для определенной группы определенного курса и специальности, а также на определенную дату и время начала занятия тип занятия на «тестирование».

    4. Определить общее время затраченное на каждый тип занятия студентов определенного преподавателя.

  1. В четвертой главе должны быть представлены разработанные процедуры и функции.

    1. Создать функцию для подсчета общего количества часов занятий определенного типа.

    2. Создать процедуру с использованием курсора для вывода списка занятий определенного преподавателя за определенный календарный период с подведением итогов по видам занятий.

  1. В пятой главе описать процесс создания триггеров, как дополнительного средства обеспечения целостности базы данных.

Создать триггер для добавления новой записи о занятии студента, который бы проверял правильность ввода всех необходимых параметров ( специальность, номер курса и группы, предмет, преподаватель, тип занятий) и возбуждал соответствующие ошибки , если параметр не верен.