오답 이유‘INSERT INTO T1 VALUES (20, 3);’ 구문은 ‘INSERT INTO T1 VALUES (20, NULL);’과 실행 결과나 적용 조건이 다르다. CHECK 제약조건은 결과가 FALSE일 때만 차단한다. NULL이 포함된 비교인 (20>10 AND NULL>5)는 Unknown이며, 이는 FALSE가 아니므로 정상적으로 입력된다. 나머지는 FALSE가 발생하여 입력 실패한다. 따라서 1번 보기 ‘INSERT INTO T1 VALUES (20, 3);’의 적용 여부를 문제 조건과 대조해야 한다.
2
INSERT INTO T1 VALUES (5, 3);
오답 이유‘INSERT INTO T1 VALUES (5, 3);’ 구문은 ‘INSERT INTO T1 VALUES (20, NULL);’과 실행 결과나 적용 조건이 다르다. CHECK 제약조건은 결과가 FALSE일 때만 차단한다. NULL이 포함된 비교인 (20>10 AND NULL>5)는 Unknown이며, 이는 FALSE가 아니므로 정상적으로 입력된다. 나머지는 FALSE가 발생하여 입력 실패한다. 따라서 2번 보기 ‘INSERT INTO T1 VALUES (5, 3);’의 적용 여부를 문제 조건과 대조해야 한다.
3
INSERT INTO T1 VALUES (20, NULL);
정답 근거CHECK 제약조건은 결과가 FALSE일 때만 차단한다. NULL이 포함된 비교인 (20>10 AND NULL>5)는 Unknown이며, 이는 FALSE가 아니므로 정상적으로 입력된다. 나머지는 FALSE가 발생하여 입력 실패한다. 따라서 3번 보기 ‘INSERT INTO T1 VALUES (20, NULL);’의 적용 여부를 문제 조건과 대조해야 한다.
4
INSERT INTO T1 VALUES (5, NULL);
오답 이유‘INSERT INTO T1 VALUES (5, NULL);’ 구문은 ‘INSERT INTO T1 VALUES (20, NULL);’과 실행 결과나 적용 조건이 다르다. CHECK 제약조건은 결과가 FALSE일 때만 차단한다. NULL이 포함된 비교인 (20>10 AND NULL>5)는 Unknown이며, 이는 FALSE가 아니므로 정상적으로 입력된다. 나머지는 FALSE가 발생하여 입력 실패한다. 따라서 4번 보기 ‘INSERT INTO T1 VALUES (5, NULL);’의 적용 여부를 문제 조건과 대조해야 한다.
ANSWER & EXPLANATION
정답 3번
핵심 판단은 3번 ‘INSERT INTO T1 VALUES (20, NULL);’입니다. CHECK 제약조건은 결과가 FALSE일 때만 차단한다. NULL이 포함된 비교인 (20>10 AND NULL>5)는 Unknown이며, 이는 FALSE가 아니므로 정상적으로 입력된다. 나머지는 FALSE가 발생하여 입력 실패한다.