SQLDSQL 기본DDL난이도 2MCQ

SQLD DDL 기출문제 #18

문제

다음과 같은 상황에서 ALTER TABLE 구문의 실행 결과로 가장 적절한 것은?

-- 기존 테이블

SQL
CREATE TABLE EMP ( EMP_ID NUMBER(5), NAME VARCHAR2(20), SALARY NUMBER(10,2) );

-- 데이터 삽입

SQL
INSERT INTO EMP VALUES (1, 'KIM', 3000.50); INSERT INTO EMP VALUES (2, 'LEE', NULL);

COMMIT;

-- ALTER 구문 실행

SQL
ALTER TABLE EMP MODIFY (SALARY NUMBER(10,2) NOT NULL);

① 정상적으로 실행된다 ② NULL 값이 존재하여 오류가 발생한다 ③ 데이터 타입 변경으로 인해 오류가 발생한다 ④ 컬럼 크기 축소로 인해 오류가 발생한다

정답

2

해설

기존 데이터 중 SALARY 컬럼에 NULL 값이 존재하므로 NOT NULL 제약조건을 추가할 수 없어 오류가 발생합니다. ① NULL 데이터가 있으므로 실행 불가, ③ 데이터 타입은 동일하게 NUMBER(10,2), ④ 컬럼 크기는 변경되지 않았습니다. NOT NULL 제약조건 추가 시 기존 데이터에 NULL이 없어야 합니다.

이런 문제 20~50개를 한 번에 풀어보세요

매번 새로 추가되는 모의고사 + 오답 자동 복습 + 회차별 실력 추적. 회원가입 후 무료 이용.

[SQLD] DDL SQL 기본 기출 #18 | sqldpass