Работа с базами данных на языке C#. Технология АDO .NET. Евсеева О.Н - 13 стр.

UptoLike

Составители: 

13
Нормализация
Функциональные зависимости проявляются, когда значение одного атри-
бута может быть определено из значения другого атрибута. Атрибут, который
может быть определен, называется функционально зависимым от атрибута, ко-
торый является детерминантом. Следовательно, по определению, все неключе-
вые (без ключа) атрибуты будут функционально зависеть от первичного ключа
в каждом отношении (так как первичный ключ уникально определяет каждую
строку). Когда один атрибут отношения уникально не определяет другой атри-
бут, но ограничивает его набором предопределенных значений, это называется
многозначной зависимостью. Частичная зависимость имеет место, когда атри-
бут отношения функционально зависит от одного атрибута составного ключа.
Транзитивные зависимости наблюдаются, когда неключевой атрибут функцио-
нально зависит от одного или нескольких других неключевых атрибутов в от-
ношении.
Процесс нормализации состоит в пошаговом построении БД в нормаль-
ной форме (НФ).
Первая нормальная форма (1НФ) очень проста. Все таблицы БД должны
удовлетворять единственному требованиюкаждая ячейка в таблицах
должна содержать атомарное значение, другими словами, хранимое зна-
чение в рамках предметной области приложения БД не должно иметь
внутренней структуры, элементы которой могут потребоваться приложе-
нию.
Вторая нормальная форма (2НФ) создается тогда, когда удалены все час-
тичные зависимости из отношений БД. Если в отношениях не имеется
никаких составных ключей, то этот уровень нормализации легко достига-
ется.
Третья нормальная форма (3НФ) БД требует удаления всех транзитивных
зависимостей.
Четвертая нормальная форма (4НФ) создается при удалении всех много-
значных зависимостей.
БД нашего примера находится в 1НФ, так как все поля таблиц БД ато-
марные по своему содержанию. Наша БД также находится и во 2НФ, так как
мы искусственно ввели в каждую таблицу уникальные коды для каждого объ-
екта (Код Туриста, Код Путевки и т. д.), за счет чего и добились 2НФ для каж-
дой из таблиц БД и всей базы данных в целом. Осталось разобраться с третьей
и четвертой нормальными формами.
Обратите внимание, что они существуют только относительно различных
видов зависимостей атрибутов БД. Есть зависимостинужно стоить НФ БД,
нет зависимостейБД и так находится в НФ. Но последний вариант практиче-
ски не встречается в реальных приложениях.
Итак, какие же транзитивные и многозначные зависимости присутствуют
в нашем примере БД менеджера турфирмы?