как использовать контрольное ограничение в postgresql для строки

я новичок в постгресе

как создать таблицу с проверочным ограничением для имени столбца, скажем, загрязненный, которая должна принимать только значения «да» или «нет» при вставке.

для других значений он должен продвигать сообщение об ошибке

Имя моей таблицы транспортные средства


person Ratan Uday Kumar    schedule 12.07.2018    source источник
comment
имя моей таблицы - транспортные средства   -  person Ratan Uday Kumar    schedule 12.07.2018
comment
Почему бы вам не использовать тип boolean? Это был бы гораздо лучший выбор для флажка да/нет   -  person a_horse_with_no_name    schedule 12.07.2018
comment
но я хочу для будущих целей для других требований   -  person Ratan Uday Kumar    schedule 12.07.2018


Ответы (1)


Используйте условие in.

create table vehicles
(
  id integer primary key, 
  polluted text not null check (polluted in ('yes', 'no'))
);
person a_horse_with_no_name    schedule 12.07.2018
comment
ваш запрос работает нормально, а также как написать сообщение об ошибке ограничения, если вставлено другое значение - person Ratan Uday Kumar; 12.07.2018