- •Тема 3 Проектирование баз данных
- •3.1. Элементы теории нормальных форм реляционных баз данных.
- •3.2. 1-Я нормальная форма (1нф).
- •3.3. 2-Я нормальная форма (2нф).
- •3.4. 3-Я нормальная форма (3нф).
- •Нормальная форма Бойса-Кодда.
- •3.5.2. Алгоритм проектирования отношений, находящихся в нфбк.
- •3.6. Корректные и некорректные декомпозиции отношений.
- •3.6.1. Аналитическое условие отсутствия потерь при соединении.
- •3.6.2. Метод табло.
- •Раздел 1.
- •Раздел 2.
- •Раздел 3.
- •3.7.Замыкание множества заданных функциональных зависимостей.
- •3.7.1. Алгоритм satisfies.
- •3.7.2. Правила вывода функциональных зависимостей.
- •Правило-f11.Рефлекторность.
- •Правило f12.Пополнение.
- •Правило f13. Транзитивность.
- •Минимальное покрытие множества функциональных зависимостей.
- •3.8. Mv–зависимости.
- •Определение mv-зависимостей.
- •3.9. 4-Я нормальная форма (4нф).
- •3.10. Алгоритм проектирования баз данных методом анализа функциональных и множественных зависимостей.
- •3.11.Проектирование баз данных. Методом “сущность-связь” (er-диаграмм, entity-relationship).
- •Получение отношений из er- диаграмм для бинарных связей.
3.9. 4-Я нормальная форма (4нф).
Пусть в отношении R(x,y,z) присутствует многозначная зависимостьx→→yи
x→→z.
Проведем анализ этого отношения, заполнив отношение записями.
|
R |
(x, |
y, |
z) |
|
1 |
x1 |
y1 |
z1 |
|
2 |
x1 |
y1 |
z2 |
|
3 |
x1 |
y2 |
z2 |
|
4 |
x1 |
y2 |
z3 |
Элементы y1во второй записи иy2в 4-ой записи избыточны. Избыточность приводит к аномалиям обновления.
Если в отношении R(x,y,z) существуетMV-зависимостьx→→y, то оно без потерь информации разлагается на отношение со схемамиR1(x,y) иR2(x,z).
Заполним эти отношения R1иR2нашими данными.
|
R1 |
(x, |
y) |
|
R2 |
(x, |
z) |
|
|
x1 |
y1 |
|
|
x1 |
z1 |
|
|
x1 |
y2 |
|
|
x1 |
z2 |
|
|
|
|
|
|
x1 |
z3 |
Избыточность в отношениях R1иR2исчезает, т.е. нет аномалий обновления. Отсутствие аномалий есть признак того, что отношение находится в нормальной форме.
Отношения R1 иR2 находятся в 4НФ.
Определение: Если в отношении R(x,y), гдеxиyнепересекающиеся подмножества, существует только зависимостьx→→y, и если правая и левая части зависимости содержат все атрибутыR, то отношение находится в 4НФ.
3.10. Алгоритм проектирования баз данных методом анализа функциональных и множественных зависимостей.
На основании системно-комплексного анализа объекта автоматизации и исходя из концептуальной модели структурного аспекта информационной страты объекта 1-ого уровня
![]()
определяются информационные элементы объекта (или отношения) – Ei.
Исходя из концептуальной модели структурного аспекта информационной страты второго утовня:
![]()
определяются атрибуты каждого отношения (eij) и всеF-зависимости иMV-зависимости каждого из отношений (Vijk).
MV-зависимости каждого из отношений используются для декомпозиции отношений. Выделяются отношения, находящиеся в 4НФ и отношения, имеющие толькоF-зависимости.
Из каждого набора F-зависимостей каждого отношения удаляются избыточные функциональные зависимости (ФЗ) на основании вывода с целью получения минимального покрытия этого отношения.
Проводится декомпозиция каждого отношения в набор отношений, находящихся в НФБК (нормальной форме Бойса-Кодда).
Методом табло проверятся правильность декомпозиции.
3.11.Проектирование баз данных. Методом “сущность-связь” (er-диаграмм, entity-relationship).
Декомпозиционный метод проектирования, который мы рассматривали ранее, является пригодным, когда количество атрибутов каждого отношения не превышает
20-30. В том случае, когда число атрибутов отношения переусложнят применение методов декомпозиции необходимо использовать метод ER-диаграмм. Он отличается от метода декомпозиции тем, что функциональные зависимости привлекаются не на начальном, а на конечном этапе проектирования.
Общие положения:
“Сущность-связь” – это модель предметной области, которая позволяет моделировать объекты ПО и их взаимоотношения.
В основе модели лежит три конструктивных элемента:
-Сущность;
-Атрибут;
-Связь;
Сущность - это некоторая абстракция реально существующего объекта, процесса и явления, о котором необходимо хранить информацию в системе.
Атрибут – это характеристика сущности, описание свойств сущности.
П
КНИГА
Сущьность:→
Атрибуты: → Название, фамилия автора, год издания.
Связи – это средства, с помощью которых представляются отношения между сущностями.
Пример:

Это диаграмма ER-типа.
Если эту диаграмму рассмотреть глубже, то получим диаграмму ER-типа. Здесь представлены все преподаватели, все курсы и все связи.

Важными характеристиками связи между сущностями является степень связи и класс принадлежности. С понятием степень связи мы уже сталкивались при рассмотрении связей между атрибутами. Между сущностями существует также 4 типа степени связи:
1:1, 1:М, М:1, М,N.
Пример:
1:1 – Преподаватель читает один курс
1:М – Преподаватель читает много курсов.
М:1 – Много преподавателей читают один курс.
M:N– Много преподавателей читают много курсов.

М:1 –много преподавателей читает один курс (редко встречается).
М:N– много преподавателей читает много курсов (в МИРЭА такого нет).
Класс принадлежности сущности определяется правилами регламентирующими деятельность организации.
Он может быть:
-обязательным;
-необязательным;
Если экземпляры данной сущности должны участвовать в связи, класс принадлежности обязательный, в противном случае не обязательный. Эти характеристики – степень связи и класс принадлежности отражаются на ER-диаграммах в виде условных обозначений:

Степень: 1:1
Класс принадлежности: ни одна из сущности не является обязательной.
Это означает, что не каждый преподаватель читает курсы(занимается методической работой например) и не каждый курс читается преподавателем (некоторые курсы студенты должны проработать самостоятельно). Для каждой сущности вводиться понятие – ключ сущности. Это первичный ключ, однозначно определяющий данные о сущности.
В нашем примере сущность преподаватель имеет первичный ключ – номер преподавателя → НК, курс → номер курса→ НК
Пример 2

Степень 1:1
Класс принадлежности: сущность ПРЕПОДАВАТЕЛЬ является обязательным, а класс принадлежности сущности КУРС является необязательным( Это означает, что каждый преподаватель обязательно читает курс, но не все курсы читаются преподавателями).
Пример 3

Степень: 1:n
Класс принадлежности сущности ПРЕПОДАВАТЕЛЬ – необязательный, КУРС – обязательный( Это означает, что ене каждый преподаватель читает курс т.е. не все преподаватели загружены работой, но каждый курс читается преподавателем).
