← 회차 전체 문제편집복원내용 검수 완료2024년 정보처리기사 2회 필기 · 데이터베이스 구축 · 60번
다음 뷰가 WITH CHECK OPTION으로 생성되어 있다. 이 뷰를 통해 수행할 때 조건 위반으로 거부되는 작업은?
CREATE VIEW active_account AS
SELECT id, status, balance FROM account WHERE status = 'ACTIVE'
WITH LOCAL CHECK OPTION;
- 1
활성 계정의 balance를 1000에서 1200으로 수정
오답 이유balance만 바꾸고 status가 ACTIVE로 유지되면 변경 후에도 뷰 조건을 만족한다. - 2
status가 ACTIVE인 새 계정을 삽입
오답 이유ACTIVE 상태의 새 행은 WHERE status='ACTIVE' 조건을 만족한다. - 3
활성 계정 한 행을 삭제
오답 이유CHECK OPTION은 새·수정 행의 가시성 조건을 검사하며 DELETE를 같은 방식으로 금지하는 옵션은 아니다. - 4
status가 INACTIVE인 새 계정을 뷰를 통해 삽입
정답 근거INACTIVE 행은 변경 직후 뷰 조건을 벗어나므로 CHECK OPTION이 삽입을 허용하지 않는다.
정답·상세해설정답 4번
CHECK OPTION은 뷰를 통한 INSERT·UPDATE 결과 행이 뷰의 WHERE 조건을 계속 만족하도록 제한한다. INACTIVE 행은 active_account에 보이지 않으므로 ④ 삽입이 거부된다.
콘텐츠 기록콘텐츠 정보
- 자료 유형
- 편집복원
- 검수 상태
- 내용 검수 완료
- 최종 검수
- 2026-08-21