NOT NULL и CHECK constraints в PostgreSQL отличаются по своему назначению:
- NOT NULL указывает, что столбцу нельзя присваивать значение NULL. 34 Например, с его помощью можно гарантировать, что у каждого клиента есть действительный адрес электронной почты. 1
- CHECK задает ограничение для диапазона значений, которые могут храниться в столбце. 5 Для этого после слова CHECK указывается в скобках условие, которому должен соответствовать столбец или несколько столбцов. 5 Например, возраст клиентов не может быть меньше 0 или больше 100. 5
Таким образом, NOT NULL гарантирует, что столбец не содержит значения NULL, а CHECK устанавливает условия для диапазона значений, которые могут в нём храниться 135.