Какие знаешь требования первой нормальной формы

«Какие знаешь требования первой нормальной формы» — вопрос из категории Базы данных, который задают на 27% собеседований Системный Аналитик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Первая нормальная форма (1NF) требует, чтобы таблица в реляционной базе данных удовлетворяла следующим условиям:

  1. Атомарность данных – все значения в столбцах должны быть неделимыми (не содержать множественных значений, массивов, списков).
  2. Уникальные строки – каждая строка должна быть уникальной (обычно за счет первичного ключа).
  3. Определенный порядок столбцов – порядок столбцов не должен влиять на данные.

Пример нарушения 1NF:

CREATE TABLE Orders (
    OrderID INT PRIMARY KEY,
    CustomerName VARCHAR(100),
    Products VARCHAR(200) -- содержит список товаров через запятую (не атомарно)
);

Исправленный вариант:

CREATE TABLE Orders (
    OrderID INT PRIMARY KEY,
    CustomerName VARCHAR(100)
);

CREATE TABLE OrderItems (
    OrderItemID INT PRIMARY KEY,
    OrderID INT,
    ProductName VARCHAR(100),
    FOREIGN KEY (OrderID) REFERENCES Orders(OrderID)
);