문제
다음 SQL의 실행 결과는?
SQLCREATE TABLE TEMP_TEST ( COL1 NUMBER PRIMARY KEY, COL2 VARCHAR2(10) UNIQUE NOT NULL, COL3 DATE DEFAULT SYSDATE ); INSERT INTO TEMP_TEST (COL1, COL2) VALUES (1, NULL); INSERT INTO TEMP_TEST (COL1, COL3) VALUES (2, DATE '2024-01-01'); SELECT COUNT(*) FROM TEMP_TEST;
① 0
② 1
③ 2
④ 오류 발생
정답
4번
해설
첫 번째 INSERT에서 COL2는 NOT NULL 제약조건이 있는데 NULL 값을 입력하려 하므로 오류가 발생합니다. 두 번째 INSERT도 COL2가 NOT NULL인데 값을 제공하지 않았으므로 오류가 발생합니다. 따라서 테이블 생성은 성공하지만 INSERT 단계에서 제약조건 위반으로 오류가 발생합니다.