SQLDSQL 기본DDL난이도 2MCQ

SQLD DDL 기출문제 #574

문제

다음 상황에서 ALTER TABLE 명령이 실행될 때 가장 적절한 결과는?

SQL
CREATE TABLE EMPLOYEE ( EMP_ID NUMBER PRIMARY KEY, NAME VARCHAR2(50), SALARY NUMBER DEFAULT 3000 ); INSERT INTO EMPLOYEE VALUES (1, 'KIM', NULL); INSERT INTO EMPLOYEE VALUES (2, 'LEE', 5000); ALTER TABLE EMPLOYEE MODIFY SALARY NUMBER DEFAULT 4000 NOT NULL;

① 성공적으로 실행된다 ② SALARY 컬럼에 NULL 값이 있어 실행 실패한다 ③ DEFAULT 값이 변경되어 기존 NULL이 4000으로 자동 변경된다 ④ PRIMARY KEY와 충돌하여 실행 실패한다

정답

2

해설

SQL
ALTER TABLENOT NULL 제약조건을 추가할 때, 해당 컬럼에 이미 NULL 값이 존재하면 실행이 실패합니다. EMP_ID=1인 행의 SALARY가 NULL이므로 NOT NULL 제약조건 추가가 불가능합니다. ① 기존 NULL 값 때문에 실행되지 않습니다.DEFAULT 값 변경이 기존 데이터를 자동으로 변경하지는 않습니다.PRIMARY KEY와는 관련이 없습니다.

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

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

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