У меня есть таблица PROGRAM, которая включает столбцы PROGRAM_NAME и PROGRAM_NUMBER.
PROGRAM_NUMBER уже уникален.
CREATE UNIQUE INDEX UNIQUE_PROG_NUMBER on PROGRAM(upper(PROGRAM_NUMBER));
Существует также ограничение, гарантирующее, что PROGRAM_NAME или PROGRAM_NUMBER всегда заполнены.
ALTER TABLE PROGRAM ADD CONSTRAINT NAME_OR_NUMBER_NOT_NULL
CHECK (PROGRAM_NAME IS NOT NULL OR PROGRAM_NUMBER IS NOT NULL) ENABLE;
Теперь появилось требование гарантировать, что если PROGRAM_NUMBER имеет значение null, то PROGRAM_NAME должно быть уникальным.
Возможно ли это применить в ограничении CHECK?