SQLD(SQL 개발자) 기출 · DDL

다음은 3개의 테이블 구조와 제약조건이다. 아래 DELETE 구문 실행 후 EMP_LOG 테이블에 남는 데이터는?
본문)
<SQL>
CREATE TABLE DEPT (
  DEPT_ID   NUMBER PRIMARY KEY,
  DEPT_NAME VARCHAR2(50)
);
CREATE TABLE EMP (
  EMP_ID    NUMBER PRIMARY KEY,
  EMP_NAME  VARCHAR2(50),
  DEPT_ID   NUMBER,
  CONSTRAINT FK_EMP_DEPT FOREIGN KEY (DEPT_ID)
    REFERENCES DEPT (DEPT_ID)
    ON DELETE CASCADE
);
CREATE TABLE EMP_LOG (
  LOG_ID    NUMBER PRIMARY KEY,
  EMP_ID    NUMBER,
  ACTION    VARCHAR2(50),
  CONSTRAINT FK_LOG_EMP FOREIGN KEY (EMP_ID)
    REFERENCES EMP (EMP_ID)
    ON DELETE SET NULL
);

<아래>
DELETE FROM DEPT WHERE DEPT_ID = 10;

이 문제 풀어보기

정답 및 해설 보기

정답: 2번

DELETE FROM DEPT WHERE DEPT_ID = 10 실행 시:
EMP에서 DEPT_ID = 10인 직원 1001, 1002는 삭제됨 (ON DELETE CASCADE)
이로 인해 EMP_LOG의 1001, 1002는 EMP_ID만 NULL로 바뀜 (ON DELETE SET NULL)
EMP_ID = 1003은 DEPT 20 소속 → 영향 없음
이 단원 연속 풀기 · DDL개념서 「DDL (CREATE / ALTER / DROP / TRUNCATE)」 읽기

이 단원 공개 기출 23문항

  1. 다음에서 설명하는 DDL문으로 올바른 것은?DDL
  2. 다음 중 DDL 문이 아닌 것은?DDL
  3. 다음 중 Mytest 테이블에 JOB 칼럼을 추가하는 방법으로 올바른 것을 고르시오.(단, 데이터타입, 제약조건 등은 따로 고려하지 않음)DDL
  4. TRUNCATE TABLE 명령어에 대한 특징으로 가장 올바른 것은?DDL
  5. 아래의 SQL문을 수행한 후 보기의 쿼리문을 실행할 때 잘못된 것은?DDL
DDL 기출 전체 보기 →