Встречается на собеседованиях • сегодня

Какие знаешь Constraints в PostgreSQL

PostgreSQL поддерживает различные типы ограничений (constraints) для обеспечения целостности данных:

  1. PRIMARY KEY – уникальный идентификатор строки (NOT NULL + UNIQUE):
sql
CREATE TABLE users (id SERIAL PRIMARY KEY, name VARCHAR(50));
  1. FOREIGN KEY – связь между таблицами:
sql
CREATE TABLE orders (id SERIAL, user_id INTEGER REFERENCES users(id));
  1. UNIQUE – уникальность значений в столбце:
sql
ALTER TABLE users ADD CONSTRAINT unique_email UNIQUE(email);
  1. CHECK – проверка значений по условию:
sql
CREATE TABLE products (
  price NUMERIC CHECK (price > 0)
);
  1. NOT NULL – запрет NULL-значений:
sql
ALTER TABLE users ALTER COLUMN name SET NOT NULL;
  1. EXCLUSION – сложные ограничения с операторами (использует GiST-индексы):
sql
CREATE TABLE rooms (
  room INT,
  period TSTZRANGE,
  EXCLUDE USING GIST (room WITH =, period WITH &&)
);

Также есть DEFERRABLE constraints (отложенные проверки) и INITIALLY DEFERRED/IMMEDIATE для управления моментом проверки.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы