Ограничения SQL

Ограничения (constraints) — это правила, применяемые к данным. Они используются для ограничения данных, которые могут быть записаны в таблицу. Это обеспечивает точность и достоверность данных в БД.

Ограничения могут устанавливаться как на уровне колонки, так и на уровне таблицы.

Среди наиболее распространенных ограничений можно назвать следующие:

  • NOT NULL — колонка не может иметь нулевое значение (запрещает хранение пустых значений)
  • DEFAULT — значение колонки по умолчанию
  • UNIQUE — все значения колонки должны быть уникальными (предотвращает дублирование значений)
  • PRIMARY KEY — первичный или основной ключ, уникальный идентификатор записи (строки) в текущей таблице
  • FOREIGN KEY — внешний ключ, уникальный идентификатор записи в другой таблице (таблице, связанной с текущей)
  • CHECK — все значения в колонке должны удовлетворять определенному условию (например, CHECK (age > 0))
  • INDEX — быстрая запись и извлечение данных

Note

Любое ограничение может быть удалено с помощью команды ALTER TABLE и DROP CONSTRAINT + название ограничения. Некоторые реализации предоставляют сокращения для удаления ограничений и возможность отключать ограничения вместо их удаления.