[9급 국가직 데이터베이스론 2026년 17번]

다음 SQL문을 통해 ‘department’와 ‘student’ 테이블을 생성하고 투플을 추가한 후 (가), (나) 문을 실행한 결과에 대한 설명으로 옳은 것은?
CREATE TABLE department (
	dcode CHAR(5) NOT NULL,
	dename VARCHAR(20),
	PRIMARY KEY(dcode));

CREATE TABLE student (
	sno INT NOT NULL,
	dept CHAR(5),
	PRIMARY KEY(sno),
	FOREIGN KEY(dept) REFERENCES department(dcode)
 			      ON DELETE CASCADE);

INSERT INTO department VALUES ('D1', 'Computer');
INSERT INTO department VALUES ('D2', 'AI');
INSERT INTO department VALUES ('D3', 'Electronics');
INSERT INTO student VALUES (100, 'D1');
INSERT INTO student VALUES (200, 'D1');
INSERT INTO student VALUES (300, 'D2');
INSERT INTO student VALUES (400, 'D3');

DELETE FROM student WHERE dept = 'D1'; -- (가)
DELETE FROM department WHERE dcode = 'D3'; -- (나)
데이터베이스론
  1. ①(가) 문장은 정상적으로 실행되나 (나) 문장은 오류가 발생하고 실행되지 않는다.
  2. ②(나) 문장은 정상적으로 실행되나 (가) 문장은 오류가 발생하고 실행되지 않는다.
  3. ③(가), (나) 문장은 실행되며 그 결과 ‘department’와 ‘student’ 테이블의 투플 수는 각각 2개, 1개이다.
  4. ④(가), (나) 문장은 실행되며 그 결과 ‘department’와 ‘student’ 테이블의 투플 수는 각각 2개, 2개이다.

선지를 골라 바로 채점해 보세요.

정답 ③

출처: 인사혁신처 공개 기출(공공데이터포털, 이용허락 제한 없음)

신고가 접수됐습니다. 감사합니다.

오류 신고