- •Практические работы по ms access Занятие 1. Создание базы данных
- •Занятие 2. Запросы. Поиск данных по условию
- •Примеры шаблонов
- •Примеры условных выражений
- •Занятие 3. Работа с помощью мастера. Создание отчетов
- •Занятие 4. Работа со связанными таблицами
- •Занятие 5. Дополнительные возможности Access. Создание подчиненных форм и макросов
- •Занятие 6. Этапы создания бд. Создание различных видов запросов в реляционных бд
- •Занятие 7. Нормализация баз данных
- •Использование Мастера подстановок в бд Турфирма
- •Первая нормальная форма (1нф)
- •Вторая нормальная форма (2нф)
- •Третья нормальная форма (3нф)
- •Задание
- •Варианты исходных данных:
- •Занятие 8. Задание на самостоятельную работу
Третья нормальная форма (3нф)
Таблица находится в третьей нормальной форме, если она уже находится во второй нормальной форме и в ней отсутствуют зависимости между неключевыми полями.
Пример:
Пусть имеется таблица Получение (фирма, склад, объем), которое содержит информацию о фирмах, получающих товары со складов. В таблице имеются функциональные зависимости:
фирма склад (фирма получает товары только с одного склада)
склад объем
Аномалии. Если в данный момент отсутствует фирма, получающая товар со склада, то в базу данных нельзя ввести информацию об объеме склада (аномалия включения). Если последняя фирма перестает получать товар со склада, данные о складе и его объеме нельзя сохранить в базе данных (аномалия удаления). Если объем склада изменяется, необходимы просмотр всей таблицы и изменение записей для фирм, связанных со складом (аномалия обновления).
Преобразование таблицы в 3НФ, устраняет рассмотренные аномалии.
Получение (фирма, склад); Склад_объем (склад, объем).
Таблица Рейс, полученная 1-м способом приведения к 1НФ не находится в 2НФ, а полученная 2-м способом – находится в 3НФ.
Получив 3НФ, мы можем сказать, что наша модель данных нормализована. Существуют и другие нормальные формы, однако в большинстве случаев 3НФ достаточно, чтобы гарантировать правильность проекта базы данных.
Задание
Проектирование БД. Для своего варианта исходных данных определить зависимости между полями (атрибутами) и нормализовать таблицы в виде 3НФ. При необходимости ввести дополнительные поля. Если отношение предположительно уже находится в 3НФ, обосновать, что это действительно так. Результатом должна являться схема данных, отражающая структуру таблиц и виды их связей.
Создание БД средствами СУБД. Реализовать нормализованную базу данных средствами MS Access. Создать запрос «Исходные данные», отображающий все данные начальной (ненормализованной) таблицы.
Варианты исходных данных:
Дан подробный план парка, на котором отдельно указано каждое дерево. Все деревья снабжены индивидуальными номерами.
ДЕРЕВЬЯ
номер_дерева |
порода |
высота |
вечнозеленое |
1 |
бук |
21 |
нет |
2 |
падуб |
9 |
да |
3 |
бук |
23 |
нет |
4 |
ясень |
18 |
нет |
Ниже приведена часть записей, помещенных в таблицу «КОНФЕТЫ».
КОНФЕТЫ
рецепт |
ингредиент |
граммы |
калории_на_гр |
ирис |
сахар |
450 |
3.7 |
ирис |
масло |
225 |
7.8 |
ирис |
мука |
5 |
3.5 |
ирис |
патока |
20 |
3.2 |
тянучка |
сахар |
450 |
3.7 |
тянучка |
масло |
225 |
7.8 |
тянучка |
сгущен_молоко |
400 |
4.5 |
В таблице фиксированы приезды людей в различные города. У всех визитеров разные фамилии, нет городов с одинаковыми названиями.
ВИЗИТЫ
дата |
фамилия |
профессия |
город |
страна |
19920615 |
Джонс |
бухгалтер |
Эфтон |
Уайландия |
19920615 |
Смит |
программист |
Ситон |
Эксландия |
19920617 |
Смит |
программист |
Эйтон |
Эксландия |
19920620 |
Смит |
программист |
Эфтон |
Уайландия |
19920620 |
Найт |
инженер |
Дитон |
Зедландия |
19920620 |
Янг |
инженер |
Ситон |
Эксландия |
Переезд из одного города в другой всегда проходит по неизменному маршруту. В день проезжает не более одного автобуса по маршруту.
ПОЕЗДКИ
откуда |
куда |
расстояние |
дата |
водитель |
время |
Уинклби |
Коклтон |
62 |
19930305 |
Маршалл |
3.4 |
Уинклби |
Коклтон |
62 |
19930306 |
Арнольд |
2.8 |
Коклтон |
Макгов |
62 |
19930306 |
Маршалл |
4.1 |
Имена полей и часть записей приведены ниже. Два конкретных шахматиста могут сыграть не более одной партии в день.
ШАХМАТЫ
дата |
участник_1 |
участник_2 |
победитель |
время |
19920502 |
Грамбиг |
Пивич |
Пивич |
3.4 |
19920502 |
Грамбиг |
Смит |
Смит |
2.5 |
19920503 |
Грамбиг |
Пивич |
Пивич |
1.4 |
19920503 |
Смит |
Пивич |
Смит |
5.2 |
Ниже приведены записи зоологического файла.
ЗВЕРИ_В_НЕВОЛЕ
зоопарк |
животное |
зона_обитания |
сторож |
Эйтон |
кенгуру |
Австралия |
Найт |
Эйтон |
верблюд |
Аравия |
Понсонби |
Битон |
эму |
Австралия |
Карузерс |
Битон |
верблюд |
Аравия |
Герсдлстон |
ОРАНЖЕРЕЯ
поместье |
садовые_цветы |
сезон_цветов |
Гейблз |
нарциссы |
весна |
Гейблз |
розы |
лето |
Козикот |
колокольчики |
весна |
Козикот |
розы |
лето |
СОРЕВНОВАНИЯвид_спорта
победитель
год_рождения
прыжки_в_длину
Армстронг
1972
бег_на_100_м
Маршалл
1969
100_м_с_барьерами
Маршалл
1969
прыжки_с_шестом
Уильямс
1969
БАР
фамилия |
напиток |
количество |
цена_за_порцию |
Армстронг |
виски |
3 |
40 |
Армстронг |
херес |
1 |
30 |
Бек |
виски |
1 |
40 |
Найт |
херес |
2 |
30 |
АВТОИНСПЕКЦИЯвладелец
дата_рожд
№_регистр
дата_регистр
Армстронг
06.1960
AHC134T
06.1979
Армстронг
06.1960
BCY529
05.1980
Бек
05.1959
AHD339H
10.1972
Найт
07.1961
ОУУ796Р
1.1976
АВТОМОБИЛИ
код_машины |
модель |
тип_кузова |
мощность_двигателя |
цвет |
дата_выпуска |
А1А |
ЗАЗ 968 |
купе |
40 |
белый |
1987 |
А2А |
ВАЗ 2105 |
седан |
70 |
красный |
1990 |
А1В |
ЗАЗ 968 |
купе |
40 |
желтый |
1990 |
А3И |
ВАЗ 2105 |
седан |
70 |
синий |
1991 |
А2В |
ВАЗ 21011 |
универсал |
80 |
синий |
1995 |
ДОРОЖНАЯ_СЛУЖБА
№_дороги |
протяженность |
город |
население |
А3 |
352 |
Арби |
25632 |
А3 |
352 |
Титон |
62310 |
А4 |
219 |
Арби |
25632 |
А4 |
219 |
Эсфилд |
25632 |
ВРАЧИ
код_врача |
фамилия_врача |
стаж_работы |
пациенты |
А1 |
Иванов |
5 |
Васильев, 45 лет Медведев, 27 лет |
А2 |
Петров |
20 |
Попов, 30 лет Щеглов, 30 лет Комаров, 38 лет |
А3 |
Сидоров |
10 |
Федоров, 35 лет Мухин, 38 лет |
ЛЕЧЕНИЕ
№_назначения |
дата_назначения |
код_пациента |
врач |
стаж_работы |
лекарство |
1 |
21.01.98 |
В1 |
Петров |
20 |
аспирин |
2 |
23.01.98 |
В5 |
Сидоров |
10 |
йод |
3 |
23.01.98 |
В1 |
Петров |
20 |
спирт |
4 |
24.01.98 |
В2 |
Иванов |
5 |
парацетамол |
ПОЕЗДА
номер |
пункт_отправления |
пункт_назначения |
отправление |
101 |
Краснодар |
Москва |
пон. 10:15, путь №4 ср. 12:30, путь №1 суб. 3:50, путь №3 |
395 |
Москва |
С.-Петербург |
пон. 6:50, путь №2 ср. 6:50, путь №2 пятн. 6:50, путь №2 |
