Какие виды аномалий обновления возникают в бд
Перейти к содержимому

Какие виды аномалий обновления возникают в бд

  • автор:

Нормализация. Понятие и необходимость применения. Аномалии модификации. Примеры

Нормализация – это процесс (процедура) приведения таблиц базы данных к ряду нормальных форм (НФ) с целью избежания избыточности в базе данных, аномалий вставки, редактирования и удаления данных. Таблицы могут иметь неэффективную или не подходящую структуру, которую нужно нормализовать. Нормализация предусматривает разбивку исходной таблицы (отношения) на несколько новых таблиц (отношений).

Правильное применение механизма нормализации к базе данных дает следующие взаимосвязанные преимущества:

  • минимизируются затраты на сохранение данных (избыточность данных). Другими словами, уменьшается размер базы данных;
  • с возрастанием размера базы данных не так заметно возрастают временные затраты на доступ к данным;
  • отсутствуют аномалии модификации в базе данных. К аномалиям модификации относятся аномалии вставки, редактирования и удаления данных.

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

  • первая нормальная форма (1НФ);
  • вторая нормальная форма (2НФ);
  • третья нормальная форма (3НФ);
  • нормальная форма Бойса-Кодда (НФБК);
  • четвертая нормальная форма (4НФ);
  • пятая нормальная форма (5НФ).

База данных считается правильно спроектированной (оптимальной или приближенной к оптимальной), если она отвечает требованиям нормальных форм. Не обязательно применять все 5 нормальных форм. Если количество атрибутов (столбцов) в базе данных небольшое, то достаточным есть применение первых трех нормальных форм. Взаимосвязь нормальных форм изображена на рисунке 1.

Базы данных. Взаимосвязь нормальных форм

Рисунок 1. Взаимосвязь нормальных форм

2. Понятие избыточности данных. Пример

Избыточность данных возникает при неправильном проектировании таблицы базы данных. В этом случае таблица содержит повторяющиеся группы данных. Такие группы данных возникают, когда осуществляется попытка записать в одну ячейку таблицы более одного значения.

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

Структура таблицы базы данных учебного заведения

Рисунок 2. Структура таблицы базы данных учебного заведения

Для примера в таблицу внесены следующие данные (фрагмент таблицы).

Базы данных. Нормализация. Избыточность данных. Пример

Рисунок 3. Таблица с заполненными данными. Избыточность данных

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

  • для идентификации студента (столбец Студент ) группа данных «Номер зачетки» — «Адрес» повторяется. Достаточно указать только поле Студент , а данные о номере зачетной книжки и адрес держать в другой связанной таблице. Тогда данные полей «Номер зачетки» и «Адрес» не будут повторяться лишний раз. Как следствие, размер таблиц базы данных будет меньше;
  • лишним есть указание кафедры для преподавателя, поскольку преподаватель может быть закреплен только за одной кафедрой. Название кафедры и его связь с преподавателем целесообразно сохранять в другой (связанной) таблице.
3. Аномалия вставки. Пример

Аномалия вставки проявляется в случаях, когда нужно добавить данные к таблице. Здесь может возникнуть ситуация, когда для вставки данных нужно добавлять (выгадывать) лишние (несуществующие) данные. Иными словами, в базу данных невозможно записать данные об одной сущности, не указав данных о другой сущности. Значит, аномалия вставки – это добавление нежелательной или несуществующей (выдуманной) информации об одной сущности в момент вставки информации о другой сущности.

Пример. Задана следующая база данных, которая основана на одной таблице. В таблице определяется информация о преподавателях ( Преподаватель , Дисциплина , Кафедра ), студентах ( Студент , Номер зачетки , Адрес ), успеваемость студентов ( Оценка ).

Базы данных. Таблица с данными об успеваемости в учебном заведении

Рисунок 4. Таблица с данными об успеваемости в учебном заведении

Пусть в эту базу данных нужно добавить нового преподавателя математики (столбцы Преподаватель, Дисциплина), который недавно принят на работу. Для этого необходимо, чтобы новый преподаватель обязательно оценил хотя бы одного студента. Иначе, в таком представлении базы данных, добавить данные будет невозможно. Значит, при добавлении преподавателя, нужно выгадывать несуществующие данные оценивания студента. Это и есть аномалия вставки.

Базы данных. Пример аномалии вставки

Рисунок 5. Пример аномалии вставки. Добавление преподавателя в базу данных требует указания информации о студенте

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

4. Аномалия редактирования. Пример

Бывают случаи, когда в таблице базы данных данные в некоторой ячейке нужно отредактировать (поправить). Причиной этому могут быть, например, ошибки ввода или изменение некоторых названий с течением времени через весомые причины. Если корректируемые данные сохранены в одном экземпляре, то проблем нет. Если же корректируемые данные сохраняются во многих ячейках таблицы, то возникает так называемая аномалия редактирования.

Значит аномалия редактирования возникает в случаях, когда в таблице базы данных существуют повторяющиеся данные. Такие данные тяжело обновлять при их редактировании, поскольку нужно вносить изменения во все ячейки таблицы, в которых эти данные фигурируют. Если при изменении повторяемых данных в одной ячейке не изменить так же эти данные в других ячейках, то компьютер будет воспринимать эти данные как разные (в отличие от человека).

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

Пример. Задана таблица базы данных учета успеваемости в учебном заведении. Пусть преподаватель физики Петренко М.М. вышла замуж и изменила фамилию на Маркевич. Теперь во всех ячейках столбца (атрибута) Преподаватель нужно изменить имя преподавателя Петренко М.М. на Маркевич М.М. (рисунок 4).

Базы данных. Нормализация. Аномалия редактирования. Пример

Рисунок 6. Аномалия редактирования. Редактирование одних и тех же данных в одной ячейке требует изменения этих данных в других ячейках

5. Аномалия удаления. Пример

Аномалия удаления проявляется в случаях, когда нужно удалить данные из таблицы. Аномалия удаления – это потеря одних данных в таблице при удалении других данных в таблице.

Пример. Пусть в таблице базы данных по ошибке было введено оценивание по дисциплине Информатика, которую перенесли на следующие семестры обучения. Автоматически, при удалении строки с дисциплиной «Информатика» , будет потеряна строка с данными о преподавателе (Левитан М.К), который преподает эту дисциплину и название кафедры (Математические дисциплины).

Базы данных. Нормализация. Аномалия удаления

Рисунок 7. Аномалия удаления. При удалении информации об оценивании студента теряется информация о преподавателе кафедры

Связанные темы

Аномалии модификации данных: что это такое и как с ними бороться

Статья рассматривает аномалии модификации данных, их типы, причины возникновения и предлагает рекомендации по их предотвращению.

Аномалии модификации данных: что это такое и как с ними бороться обновлено: 22 сентября, 2023 автором: Научные Статьи.Ру

Помощь в написании работы

Введение

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

Нужна помощь в написании работы?

Мы — биржа профессиональных авторов (преподавателей и доцентов вузов). Наша система гарантирует сдачу работы к сроку без плагиата. Правки вносим бесплатно.

Что такое аномалии модификации данных

Аномалии модификации данных – это нежелательные и непредсказуемые изменения, которые могут произойти при выполнении операций модификации данных в базе данных. Они могут привести к некорректным и несогласованным данным, что может негативно сказаться на работе системы и достоверности информации.

Операции модификации данных включают в себя вставку (INSERT), обновление (UPDATE) и удаление (DELETE) записей в таблицах базы данных.

Аномалии модификации данных могут возникать в различных ситуациях, например, при несогласованности данных, отсутствии целостности или неправильном использовании транзакций.

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

Типы аномалий модификации данных

Аномалии модификации данных – это нежелательные и непредсказуемые изменения данных, которые могут возникнуть при выполнении операций вставки, обновления или удаления записей в базе данных. Вот некоторые из типов аномалий модификации данных:

Аномалия вставки (Insertion Anomaly)

Аномалия вставки возникает, когда для выполнения операции вставки требуется вводить неполные данные или повторять одни и те же данные в разных записях. Например, если у нас есть таблица “Студенты” с полями “Имя”, “Фамилия” и “Группа”, и мы хотим добавить нового студента, но не знаем его группу, то мы либо должны ввести пустое значение, либо повторить группу из предыдущей записи. Это приводит к неполным или дублирующимся данным.

Аномалия обновления (Update Anomaly)

Аномалия обновления возникает, когда при выполнении операции обновления данных в одной записи необходимо изменить данные в нескольких других записях. Например, если у нас есть таблица “Заказы” с полями “Номер заказа”, “Дата заказа” и “Статус заказа”, и мы хотим изменить статус заказа, то нам придется обновить все записи с данным номером заказа. Это может привести к ошибкам и несогласованности данных.

Аномалия удаления (Deletion Anomaly)

Аномалия удаления возникает, когда при выполнении операции удаления записи удаляются также и другие связанные с ней записи, которые могут быть необходимы для других целей. Например, если у нас есть таблица “Клиенты” с полями “Имя клиента”, “Адрес” и “Номер телефона”, и мы удаляем клиента, то мы также удаляем его адрес и номер телефона. Это может привести к потере данных и нарушению целостности.

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

Причины возникновения аномалий модификации данных

Аномалии модификации данных могут возникать по разным причинам. Рассмотрим некоторые из них:

Несогласованность данных

Одной из основных причин возникновения аномалий модификации данных является несогласованность данных. Это происходит, когда данные в базе данных не соответствуют друг другу или нарушается целостность данных. Например, если в базе данных есть таблицы “Заказы” и “Товары”, и в таблице “Заказы” есть ссылка на товары, то при удалении товара из таблицы “Товары” может возникнуть аномалия, если ссылка на этот товар остается в таблице “Заказы”. Это приводит к несогласованности данных и нарушению целостности.

Неправильное использование транзакций

Транзакции используются для гарантирования целостности данных при выполнении операций в базе данных. Однако, если транзакции не используются правильно или не учитываются все возможные сценарии, то могут возникнуть аномалии модификации данных. Например, если транзакция не завершается успешно, то изменения, внесенные в базу данных, могут быть отменены, что приведет к аномалиям.

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

Неправильное проектирование базы данных может также привести к аномалиям модификации данных. Если таблицы и связи между ними не были правильно спроектированы, то при выполнении операций вставки, обновления или удаления записей могут возникнуть аномалии. Например, если в базе данных есть таблицы “Клиенты” и “Заказы”, и связь между ними не была правильно установлена, то при удалении клиента могут быть удалены также и его заказы, что приведет к потере данных и нарушению целостности.

Это лишь некоторые из причин возникновения аномалий модификации данных. Важно учитывать эти причины при проектировании и использовании базы данных, чтобы предотвратить возникновение аномалий и обеспечить целостность данных.

Примеры аномалий модификации данных

Аномалия вставки

Аномалия вставки возникает, когда при попытке добавить новую запись в таблицу, необходимо внести данные, которые не могут быть полностью заполнены из-за отсутствия связанных данных.

Например, предположим, у нас есть таблица “Клиенты” и таблица “Заказы”. Если мы пытаемся добавить новый заказ в таблицу “Заказы”, но у нас нет информации о клиенте, к которому относится этот заказ, мы не сможем полностью заполнить все поля заказа.

Аномалия обновления

Аномалия обновления возникает, когда при обновлении данных в таблице, изменения применяются только к некоторым записям, а не ко всем записям, которые должны быть изменены.

Например, предположим, у нас есть таблица “Сотрудники” и в ней есть поле “Зарплата”. Если мы хотим повысить зарплату всех сотрудников с определенной должностью, но забываем обновить одну запись, это приведет к несоответствию данных и неправильным значениям зарплаты.

Аномалия удаления

Аномалия удаления возникает, когда при удалении данных из таблицы, удаляются также и другие связанные данные, которые должны оставаться в базе данных.

Например, предположим, у нас есть таблица “Клиенты” и таблица “Заказы”. Если мы удаляем клиента из таблицы “Клиенты”, но не удаляем его заказы из таблицы “Заказы”, это приведет к потере данных и нарушению целостности.

Это лишь некоторые из примеров аномалий модификации данных. Важно учитывать эти примеры и предотвращать возникновение аномалий при проектировании и использовании базы данных.

Как предотвратить аномалии модификации данных

Аномалии модификации данных могут быть предотвращены с помощью правильного проектирования и использования базы данных. Вот несколько способов предотвратить аномалии модификации данных:

Нормализация данных

Нормализация данных – это процесс организации данных в базе данных таким образом, чтобы избежать дублирования и излишней сложности. При нормализации данных таблицы разделяются на более мелкие и связанные между собой таблицы, что позволяет избежать аномалий модификации данных. Нормализация данных помогает устранить проблемы, связанные с вставкой, обновлением и удалением данных.

Использование транзакций

Транзакции – это группы операций, которые выполняются как единое целое. Использование транзакций позволяет обеспечить атомарность, согласованность, изолированность и долговечность данных (ACID-свойства). Транзакции помогают предотвратить аномалии модификации данных, так как все операции выполняются либо полностью, либо не выполняются вообще.

Ограничение целостности данных

Ограничение целостности данных – это набор правил и ограничений, которые определяют допустимые значения и отношения между данными в базе данных. Например, можно определить ограничение, которое не позволит удалить клиента из таблицы “Клиенты”, если у него есть заказы в таблице “Заказы”. Ограничение целостности данных помогает предотвратить аномалии модификации данных, так как не допускает нарушения целостности данных.

Использование триггеров

Триггеры – это специальные хранимые процедуры, которые автоматически выполняются при определенных событиях в базе данных. Использование триггеров позволяет контролировать и проверять данные перед их вставкой, обновлением или удалением. Триггеры помогают предотвратить аномалии модификации данных, так как позволяют выполнять дополнительные проверки и операции перед изменением данных.

Правильное использование индексов

Индексы – это структуры данных, которые ускоряют поиск и сортировку данных в базе данных. Правильное использование индексов позволяет улучшить производительность запросов и предотвратить аномалии модификации данных. Индексы помогают ускорить операции вставки, обновления и удаления данных, так как они уменьшают количество записей, которые нужно просмотреть.

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

Таблица сравнения аномалий модификации данных

Тип аномалии Описание Причины Пример Предотвращение
Вставка Аномалия, возникающая при попытке вставить новую запись в таблицу Отсутствие обязательных значений, нарушение ограничений целостности Попытка вставить запись без указания значения в обязательном поле Проверка наличия всех обязательных значений перед вставкой
Обновление Аномалия, возникающая при обновлении данных в таблице Некорректное обновление данных, отсутствие обязательных значений Обновление поля, которое не должно быть изменено Проверка корректности обновляемых данных перед выполнением операции
Удаление Аномалия, возникающая при удалении данных из таблицы Удаление связанных данных, потеря целостности Удаление записи, на которую ссылаются другие записи Использование ограничений целостности и каскадного удаления

Заключение

Аномалии модификации данных – это нежелательные и непредсказуемые изменения данных в базе данных, которые могут привести к ошибкам и некорректным результатам. Они могут возникать из-за неправильного проектирования базы данных или некорректного использования операций модификации данных. Для предотвращения аномалий модификации данных необходимо правильно спроектировать структуру базы данных, использовать транзакции и проверки целостности данных. Это поможет обеспечить надежность и корректность работы базы данных.

Аномалии модификации данных: что это такое и как с ними бороться обновлено: 22 сентября, 2023 автором: Научные Статьи.Ру

Избыточное дублирование данных и аномалии

Следует различать простое (неизбыточное) и избыточное дублирование данных. Наличие первого из них допускается в базах данных, а избыточное дублирование данных может приводить к проблемам при обработке данных.

Приведем примеры обоих вариантов дублирования.

Пример неизбыточного дублирования данных представляет приведенное ниже отношение С_Т с атрибутами Сотрудник и Телефон. Для сотрудников, находящихся в одном помещении, номера телефонов совпадают. Номер телефона 4328 встречается несколько раз, хотя для каждого служащего номер телефона уникален. Поэтому ни один из номеров не является избыточным. Действительно, при удалении одного из номеров телефонов будет утеряна информация о том, по какому номеру можно дозвониться до одного из служащих.

Сотрудник Телефон
Иванов И.М. 3721
Петров М.И. 4328
Сидоров Н.Г. 4328
Егоров В.В. 4328

Пример избыточного дублирования (избыточности) представляет приведенное отношение С_Т_Н , которое, в отличие от отношения С_Т , дополнено атрибутом Н_комн (номер комнаты сотрудника). Естественно предположить, что все служащие в одной комнате имеют один и тот же телефон. Следовательно, в рассматриваемом отношении имеется избыточное дублирование данных. Так, в связи с тем, что Сидоров и Егоров находятся в той же комнате, что и Петров, их номера можно узнать из кортежа со сведениями о Петрове.

Сотрудник Телефон Н_комн
Иванов И.М. 3721 109
Петров М.И. 4328 111
Сидоров Н.Г. 4328 111
Егоров В.В. 4328 111

Ниже приведен пример неудачного отношения С_Т_Н , в котором вместо телефонов Сидорова и Егорова поставлены прочерки (неопределенные значения). Неудачность подобного способа исключения избыточности заключается в следующем. Во-первых, при программировании придется потратить дополнительные усилия на создание механизма поиска информации для прочерков таблицы. Во-вторых, память все равно выделяется под атрибуты с прочерками, хотя дублирование данных и исключено. В-третьих, что особенно важно, при исключении из коллектива Петрова кортеж со сведениями о нем будет исключен из отношения, а значит, уничтожена информация о телефоне 111-й комнаты, что недопустимо.

Сотрудник Телефон Н_комн
Иванов И.М. 3721 109
Петров М.И. 111
Сидоров Н.Г. 111
Егоров В.В. 111
Телефон Н_комн
3721 109
4328 111
Сотрудник Н_комн
Иванов И.М. 109
Петров М.И. 111
Сидоров Н.Г. 111
Егоров В.В. 111

Здесь показаны два отношения С_Н и Н_Т , полученные путем декомпозиции исходного отношения С_Т_Н . Первое из них содержит информацию о номерах комнат, в которых располагаются сотрудники, а второе — информацию о номерах телефонов в каждой из комнат. Теперь, если Петрова и уволят из учереждения и, как следствие этого, удалят всякую информацию о нем из баз данных учреждения, это не приведет к утере информации о номере телефона в 111-й комнате.

Процедура декомпозиции отношения С_Т_Н на два отношения С_Н и Н_Т является основной процедурой нормализации отношений.

Избыточное дублирование данных создает проблемы при обработке кортежей отношения, названные Э. Коддом «аномалиями обновления отношения». Он показал, что для некоторых отношений проблемы возникают при попытке удаления, добавления или редактирования их кортежей.

Аномалиями будем называть такую ситуацию в таблицах БД, которая приводит к противоречиям в БД либо существенно усложняет обработку данных. Выделяют три основные вида аномалий: аномалии модификации (или редактирования), аномалии удаления, аномалии добавления.

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

Так, например, изменение номера телефона в комнате 111, что представляет собой один единственный факт, потребует просмотра всей таблицы С_Т_Н а) и изменения поля Н_комн согласно текущему содержимому таблицы в записях, относящихся к Петрову, Сидорову и Егорову.

Аномалии удаления состоят в том, что при удалении какого-либо данного из таблицы может пропасть и другая информация, которая не связана напрямую с удаляемым данным.

В той же таблице С_Т_Н удаление записи о сотруднике Иванове (например, по причине увольнения или ухода на заслуженный отдых) приводит к исчезновению информации о номере телефона, установленного в 109-й комнате.

Аномалии добавления возникают в случаях, когда информацию в таблицу нельзя поместить до тех пор, пока она неполная, либо вставка новой записи требует дополнительного просмотра таблицы.

Примером может служить операция добавления нового сотрудника все в ту же таблицу С_Т_Н . Очевидно, будет противоестественным хранение сведений в этой таблице только о комнате и номере телефона в ней, пока никто из сотрудников не помещен в нее. Более того, если в таблице С_Т_Н поле Служащий является ключевым, то хранение в ней неполных записей с отсутствующей фамилией служащего просто недопустимо из-за неопределенности значения ключевого поля.

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

1. Аномалии модификации данных

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

2. Нормализация отношений

В рамках реляционной модели данных Э.Ф. Коддом был разработан аппарат нормализации отношений и предложен механизм, позволяющий любое отношение преобразовать к третьей нормальной форме. Нормализация схемы отношения выполняется путём декомпозиции схемы. Декомпозицией схемы отношения R называется замена её совокупностью схем отношений Аi таких, что и не требуется, чтобы отношения Аi были непересекающимися. Декомпозиция отношения должна обладать следующими свойствами: Полнота — декомпозиция не должна приводить к потере зависимостей между атрибутами сущностей. Восстановимость — должна существовать операция реляционной алгебры, применение которой позволит восстановить исходной отношение. В нормализованном отношении все неключевые атрибуты функционально зависят от ключа отношения. Говорят, что неключевой атрибут функционально полно зависит от составного ключа, если он функционально зависит от ключа, но не находится в функциональной зависимости ни от какой части составного ключа. Вторая нормальная форма (2НФ). Отношение находится во 2НФ, если оно приведено к 1НФ и каждый неключевой атрибут функционально полно зависит от составного ключа. Для того чтобы привести отношение ко 2НФ, нужно: построить его проекцию, исключив атрибуты, которые не находятся в функционально полной зависимости от составного ключа; построить дополнительные проекции на часть составного ключа и атрибуты, функционально зависящие от этой части ключа. Третья нормальная форма (3НФ). Отношение находится в 3НФ, если оно находится во 2НФ и в нем отсутствуют транзитивные зависимости. Введём понятие многозначной зависимости. Многозначная зависимость существует, если заданным значениям атрибута X соответствует множество, состоящее из нуля (или более) значений атрибута Y (X–»Y). Если в отношении присутствуют многозначные зависимости, то схема отношения должна находиться в 4НФ. Различают тривиальные и нетривиальные многозначные зависимости. Тривиальной называется такая многозначная зависимость X–»Y, для которой Y Ì X или X U Y = R, где R – рассматриваемое отношение. Тривиальная многозначная зависимость не нарушает 4НФ. Если хотя бы одно из двух этих условий не выполняется (т.е. Y не является подмножеством X или X U Y состоит не из всех атрибутов R), то такая многозначная зависимость называется нетривиальной. Четвертая нормальная форма (4НФ). Отношение находится в 4НФ, если оно находится в 3НФ и в нем отсутствуют нетривиальные многозначные зависимости. Нормализация сокращает дублирование данных, но появление новых отношений усложняет поддержку логической целостности данных.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *