학습용 기출·복원자료 분류 확인SQLD · 2023년 51회 SQL 기본 및 활용 · 45번
Oracle UNIQUE 제약에 관한 설명으로 옳지 않은 것은?
1
PRIMARY KEY는 NULL과 중복을 모두 허용하지 않는다.
오답 이유기본키는 행 식별을 위해 두 조건을 모두 강제한다. 따라서 1번 보기 ‘PRIMARY KEY는 NULL과 중복을 모두 허용하지 않는다.’의 적용 여부를 문제 조건과 대조해야 한다.
2
CHECK는 행 값이 지정 조건을 만족하도록 제한한다.
오답 이유CHECK는 TRUE 또는 UNKNOWN인 행을 허용하고 FALSE를 거부한다. 따라서 2번 보기 ‘CHECK는 행 값이 지정 조건을 만족하도록 제한한다.’의 적용 여부를 문제 조건과 대조해야 한다.
3
제약조건은 데이터 무결성을 유지하는 규칙이다.
오답 이유허용되지 않는 데이터 입력을 DBMS 수준에서 차단한다. 따라서 3번 보기 ‘제약조건은 데이터 무결성을 유지하는 규칙이다.’의 적용 여부를 문제 조건과 대조해야 한다.
4
NULL을 여러 행에 저장하면 항상 UNIQUE 위반이다.
정답 근거Oracle의 UNIQUE 제약은 비NULL 값의 중복을 금지하지만 NULL은 값 비교 대상으로 보지 않아 여러 행에 허용될 수 있다. PRIMARY KEY는 UNIQUE와 NOT NULL을 함께 보장한다. 따라서 4번 보기 ‘NULL을 여러 행에 저장하면 항상 UNIQUE 위반이다.’의 적용 여부를 문제 조건과 대조해야 한다.
ANSWER & EXPLANATION
정답 4번
이 문항에서 조건에 맞지 않는 보기는 4번 ‘NULL을 여러 행에 저장하면 항상 UNIQUE 위반이다.’입니다. Oracle의 UNIQUE 제약은 비NULL 값의 중복을 금지하지만 NULL은 값 비교 대상으로 보지 않아 여러 행에 허용될 수 있다. PRIMARY KEY는 UNIQUE와 NOT NULL을 함께 보장한다.