Sobes.tech
Назад к вопросам
Junior — Middle
68

Какие ограничения и ограничения целостности применимы в PostgreSQL?

Компании, где спрашивали
ООО Динамика

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

sobes.tech AI

В PostgreSQL применяются различные ограничения и ограничения целостности, которые помогают поддерживать корректность и согласованность данных:

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

Пример ограничения:

CREATE TABLE employees (
    id SERIAL PRIMARY KEY,
    email VARCHAR(255) UNIQUE NOT NULL,
    department_id INT REFERENCES departments(id),
    salary NUMERIC CHECK (salary > 0)
);

Здесь email не может быть NULL и должен быть уникальным, department_id ссылается на таблицу departments, а salary должен быть положительным числом.

Эти ограничения помогают предотвратить ошибки при вводе данных и обеспечивают целостность базы.