- •Проектирование баз данных. Лекция 1. Введение. Банки и базы данных. Архитектура субд.
- •Хранимая база данных (Внутренняя модель)
- •Понятие проектирования баз данных. Различные подходы к проектированию бд.
- •Различные подходы к проектированию данных.
- •Сетевая модель данных.
- •Лекция 2.
- •Реляционные операции над отношениями.
- •Лекция 3. Аномалии хранения данных.
- •Функциональная зависимость.
- •Концептуальное проектирование данных. Нормализация. Понятие функциональной зависимости. Теорема Хита.
- •Теорема Хита.
- •Лекция 4. Пятая нф. Универсальное отношение. I и II нф.
- •Первая нормальная форма.
- •Вторая нормальная форма.
- •Третья нормальная форма. Транзитивные зависимости.
- •Лекция 5. Нормальная форма Бойса-Кодда. Четвертая нормальная форма. «Перенормализованные» модели данных.
- •Четвертая нормальная форма.
- •«Перенормализованные» модели данных.
- •Пример проектирования бд.
- •Отношение “Аптека”
- •Отношение “Лекарство”
- •Отношение “Наличие лекарств”
- •Отношение “Поставщик”
- •Отношение “Лицензия поставщика”
- •Отношение “Запрос на поставку”
- •Лекция 6. Проектирование в терминах «Сущность – связь»
- •Сущности и связи.
- •Классификация связей
- •Предварительные отношения для бинарных связей степени 1:1.
- •Лекция 7. Предварительные отношения для степени связи 1:n и m:n.
- •Предварительные отношения для степени связи m:n.
- •Лекция 14. Предварительные отношения для связей высших порядков. Использование ролевых отношений.
- •Студент
- •Использование ролевых отношений.
- •Рабочий
- •Подчиненный
- •Лекция 8. Развитой пример применения e-r проектирования.
- •Сопоставление методик нормализации и e-r проектирования. Физическое проектирование.
- •Физическое проектирование.
- •Ограничения целостности.
- •Заключение.
Первая нормальная форма.
Говорят, что отношение находится в первой нормальной форме, если все его атрибуты атомарны и всегда будут иметь атомарные значения.
Под атомарностью здесь понимают невозможность дальнейшего дробления атрибута без потери информации. Так, фрагмент рассмотренного ранее отношения (см. рис. 6) может быть представлен в следующем виде:
-
№
зач.
Груп-па
ФИО
Студента
Дата рожд.
Шифр Курса / Оценка
4567
5203
Петров
01.10.80
М/3;Ф/3;А/4
4568
5203
Иванов
14.05.79
М/5;Ф/5
4569
5104
Сидоров
17.08.80
М/4;Ф/5;С/4
Такое представление, безусловно, является отношением, но не находится в I НФ. Если проектировщик поддастся соблазну работать с отношением в таком виде, (нет избыточности – и не надо вести проектирование дальше) то расплатой за такую вольность будет невозможность или серьезные ограничения на использование стандартных механизмов СУБД для доступа к данным. Более того – использование специфичных и нестандартных средств обработки данных влечет за собой серьезные и очень трудоемкие проблемы при интеграции такого рода таблицы в уже существующую базу данных, для совместного использования с существующими приложениями. В итоге, попытка работы с этой таблицей приведет к проблемам не меньшим, если не большим, чем в случае, когда допущена избыточность хранимой информации. Современная теория проектирования БД даже не рассматривает возможность хранения отношений в ненормализованном виде.
Итак, формализация предметной области начинается с построения первой нормальной формы. В практике проектирования на этом этапе строится одно отношение, охватывающее всю предметную область. Его иногда называют универсальным отношением. При всей внешней простоте требований к I НФ, на этом шаге проектировщик должен решить весьма ответственную задачу, а именно – установить, какой именно набор атрибутов дает возможность адекватно описать состояние предметной области. Задача выбора существенных для решения задачи характеристик предметной области и отсева несущественных для своего решения часто требует привлечения специалистов из этой предметной области (организации, подразделения).
Приведем еще раз пример отношения, находящегося в I НФ. Описание предметной области приводится в разделе «Аномалии обработки данных». Будем считать, что оно является универсальным отношением. На этом упрощенном примере продемонстрируем технику проектирования БД.
Отношение «Успеваемость студентов»
№ зач. |
Груп-па |
ФИО Студента |
Дата рожд. |
Шифр Курса
|
Наименование |
Колич. Часов |
Оценка |
Таб№ преподавателя |
ФИО препод. |
Кафедра |
Телефон |
4567 |
5203 |
Петров |
01.10.80 |
М |
матем. |
120 |
3 |
10 |
Сергеев |
Матем. |
34-01-02 |
4567 |
5203 |
Петров |
01.10.80 |
Ф |
Философия |
150 |
3 |
45 |
Афанасьев |
Филос. |
25-33-66 |
4567 |
5203 |
Петров |
01.10.80 |
А |
англ. |
90 |
4 |
12 |
Васильева |
Ин.яз. |
25-99-70 |
4568 |
5203 |
Иванов |
14.05.79 |
М |
матем. |
120 |
5 |
10 |
Сергеев |
Матем. |
34-01-02 |
4568 |
5203 |
Иванов |
14.05.79 |
Ф |
Философия |
150 |
5 |
45 |
Афанасьев |
Филос. |
25-33-66 |
4569 |
5104 |
Сидоров |
17.08.80 |
М |
матем. |
120 |
4 |
11 |
Сазонов |
Матем. |
34-01-02 |
4569 |
5104 |
Сидоров |
17.08.80 |
Ф |
Философия |
150 |
5 |
45 |
Иванов |
Филос. |
25-33-66 |
4569 |
5104 |
Сидоров |
17.08.80 |
С |
Сопромат |
100 |
4 |
22 |
Голубев |
Физика |
31-30-29 |
Рис.8. Отношение в первой нормальной форме.
