Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторная работа 3_БД.doc
Скачиваний:
2
Добавлен:
01.07.2025
Размер:
102 Кб
Скачать
☆
  1. Задание для выполнения лабораторной работы

Порядок выполнения приведен в таблице 1.

Таблица 1.

Задания и порядок выполнения работы

№

Название

Описание

1

Спроектировать таблицы

Создать таблицы*, определить свойства полей каждой таблицы, определить первичные ключи таблиц.

2

Построить схему базы данных

Дополнить таблицы полями для реализации связей «один ко многим». Создать связи между таблицами, создать таблицы для реализации связи «многие ко многим».

3

Заполнить таблицы данными

Заполнить таблицы данными для проведения экспериментов. Количество записей в таблице не менее 5.

4

Реализовать запрос к базе данных

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

5**

Создать форму

Используя мастер форм, создать формы ввода (Формы) для добавления и изменения данных таблиц.

6**

Создать отчеты

Создать отчеты с использованием мастера составления отчетов в соответствии с заданием.

В процессе защиты отчета по лабораторной работе необходимо обосновать правильность всех принятых решений.

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

**Задания 5 и 6 не описаны. Изучить самостоятельно, используя справку Microsoft Access.

Варианты для выполнения работы приведены в приложении 1.

4. Порядок выполнения

Дан список атрибутов: Код факультета, Наименование факультета, Код специальности, Наименование специальности, № группы, Код студента, ФИО студента, Наименование дисциплины, Оценка.

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

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

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

По условию и собственному опыту понимаем:

- факультетов может быть много: сущность «Факультет» (табл. 2);

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

Таблица 2

Код факультета

Наименование факультета

1

ИВТ

2

УК

Таблица 3

Код

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

Наименование специальности

Код факультета

1

Вычислительные машины, комплексы, системы и сети

1

2

Системы автоматизированного проектирования

1

3

Автоматизированные системы обработки информации и управления

1

4

Мехатронные системы

2

5

Безопасность жизнедеятельности

2

Данные в таблице означают, что специальности с кодом 1,2,3 относятся к факультету ИВТ, а специальности 4,5 – к факультету УК.

- в каждой специальности могут быть несколько групп: сущность «Группа» с полем «код специальности» (аналогично сущности «Специальность» с полем «код факультета»);

- в каждой группе могут учиться много студентов: сущность «Студент» с полем «код группы»;

Далее рассуждения изменяются в сторону установления сложных взаимодействий между сущностями:

- одна и та же дисциплина может входит в учебную программу нескольких специальностей, но и на каждой специальности изучается несколько дисциплин: в результате появляется сущность «Дисциплина» с полями «код дисциплины» и «наименование дисциплины», а отношение с сущностью «Специальность» необходимо оформить в виде отдельной таблицы: Дисциплина Специальность _Дисциплина Специальность

Оценка студенту выставляется за дисциплину, т.е. у каждого студента множество оценок по разным дисциплинам: в результате появляется сущность «Оценка студента» с полями «код студента», «код дисциплины» и «оценка», т.е. она связана с сущностями «Студент» и «Дисциплина» (смотри предыдущее рассуждение).

Рис. 1. Результат выполнения Шага 1. «Выписать атрибуты сущностей»

Рис. 2. Результат выполнения Шага 2. «Сгруппировать атрибуты по принадлежности к одной сущности. Задать ключевое поле (ключевой атрибут)».

Рис. 3. Результат выполнения Шага 3. «Дополнить сущности атрибутами для установления связей «один ко многим».

Рис. 4. Результат выполнения Шага 4. «Добавить сущности для реализации связи «многие ко многим».

При проектировании БД необходимо помнить следующее:

-всегда задавайте ключевое поле, которое будет однозначно характеризовать строку таблицы – данные в ключевом поле не должны повторяться (ключ может состоять из нескольких полей);

-ключевое поле должно быть числового типа или типа счетчик;

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

-данные в базе данных не должны дублироваться, допускается дублирование информации только для полей, по которым осуществляется связь таблиц между собой.

В приложении 2 к методическим указаниям в презентации на слайдах показан пример проектирования базы данных с использованием анимации и некоторые приемы работы в СУБД Access 2010.