Два ограничения в одном столбце - PullRequest
0 голосов
/ 19 сентября 2018

Моя таблица содержит столбец с именем «Электронная почта».Теперь я хочу, чтобы, если кто-то предоставил Email, SQL проверил проверку или если кто-то забыл предоставить Email, SQL будет содержать значение по умолчанию «None».

Как я могу это сделать?

1 Ответ

0 голосов
/ 19 сентября 2018

Я не уверен, с какой базой данных вы работаете.Это будет работать на Postgresql.

При создании таблицы добавьте ограничение на столбец электронной почты, например:

create table email_test 
(email text  check (email like '%@%.%' or email like 'NONE') default 'NONE');

Если таблица уже создана,

alter table email_test add constraint check_email check (email like '%@%%' or email like 'NONE');

Но этот ALTER не будет работать, если есть какие-либо строки, которые нарушают указанное ограничение.

...