2011-10-27 7 views
7

모든 값이 고유하지만 기본값과 중복되도록 허용하는 check 제약 조건을 추가 할 수 있습니까?Oracle 제약 조건

답변

11

당신은 funcction 기반 인덱스 (FBI)을 사용하여이를 달성 할 수있는 '기본'을 제외한 모든 값에 고유 인덱스를 생성

create unique index idx on my_table (case when col != 'DEFAULT' then col end)); 

합니다.

+0

올바른 접근 방법입니다. FBI가 작동하도록 쿼리 재 작성을 부여해야합니다. – phil

+2

8i 이후로 쿼리 재 작성 요구 사항이 존재하지 않습니다. –

+0

당신은 절대적으로 정확합니다. 왜이 생각이 저와 함께이 모든 시간에 붙어 있는지 전혀 모릅니다. 생생하고 배우기 – phil

관련 문제