Назад к вопросам
Junior
78
questionbank

Что такое ограничения в SQL?

Sobes Copilot

Получайте ответы в реальном времени

Ответ от нейросети

sobes.tech AI

Ограничения в SQL — это правила, применяемые к столбцам или таблицам для обеспечения целостности данных. Они определяют набор допустимых данных в таблице.

Основные типы ограничений:

  • NOT NULL: Столбец не может содержать нулевые значения.
  • UNIQUE: Все значения в столбце должны быть уникальными.
  • PRIMARY KEY: Комбинация ограничений NOT NULL и UNIQUE. Однозначно идентифицирует каждую запись в таблице. Таблица может иметь только один первичный ключ.
  • FOREIGN KEY: Устанавливает связь между двумя таблицами, ссылаясь на первичный ключ или уникальный ключ другой таблицы. Обеспечивает ссылочную целостность.
  • CHECK: Проверяет, что все значения в столбце соответствуют определенному условию.
  • DEFAULT: Устанавливает значение по умолчанию для столбца, если значение не указано при вставке записи.

Пример создания таблицы с ограничениями:

CREATE TABLE Employees (
    employee_id INT PRIMARY KEY, -- Первичный ключ
    first_name VARCHAR(50) NOT NULL, -- Не может быть NULL
    last_name VARCHAR(50) NOT NULL, -- Не может быть NULL
    email VARCHAR(100) UNIQUE, -- Уникальное значение
    hire_date DATE DEFAULT CURRENT_DATE, -- Значение по умолчанию (текущая дата)
    salary DECIMAL(10, 2) CHECK (salary > 0) -- Условие: зарплата должна быть больше 0
);

CREATE TABLE Orders (
    order_id INT PRIMARY KEY,
    employee_id INT,
    order_date DATE,
    FOREIGN KEY (employee_id) REFERENCES Employees(employee_id) -- Внешний ключ, ссылается на таблицу Employees
);

Ограничения помогают поддерживать точность и надежность данных в базе данных.