Ответ
Нормализация — это процесс проектирования схемы реляционной базы данных, направленный на устранение избыточности данных и аномалий при вставке, обновлении и удалении (аномалий модификации). Достигается за счет декомпозиции таблиц и установления связей через ключи.
Основные нормальные формы (НФ) и их правила:
-
Первая нормальная форма (1НФ):
- Правило: Все значения атрибутов атомарны (неделимы), в таблице нет повторяющихся групп или массивов.
- Нарушение: Столбец
PhoneNumbersсо значением"123-456, 789-012". - Исправление: Вынести номера в отдельные строки или в связанную таблицу.
-
Вторая нормальная форма (2НФ):
- Правило: Таблица должна находиться в 1НФ, и каждый неключевой атрибут должен полностью зависеть от всего первичного ключа (актуально для составных ключей).
- Нарушение: Таблица
Order_Details(OrderID, ProductID, ProductName, Quantity).ProductNameзависит только отProductID, а не от всей пары ключей. - Исправление: Вынести
ProductNameв таблицуProducts.
-
Третья нормальная форма (3НФ):
- Правило: Таблица должна находиться в 2НФ, и отсутствуют транзитивные зависимости. Неключевые атрибуты не должны зависеть от других неключевых атрибутов.
- Нарушение: Таблица
Employees(EmpID, Name, DeptID, DeptLocation).DeptLocationзависит отDeptID, а не напрямую отEmpID. - Исправление: Вынести
DeptID, DeptLocationв отдельную таблицуDepartments.
Практический результат: Повышение целостности данных, эффективное использование памяти и упрощение операций модификации за счет устранения дублирования.