기출문제/정보처리기사

2019년 3회 정보처리기사 기출문제 10번

엉클지니 2025. 4. 16. 23:14

10. (View)에 대한 설명으로 옳지 않은 것은?

    뷰 위에 또 다른 뷰를 정의할 수 있다.

    DBA는 보안 측면에서 뷰를 활용할 수 있다.

    뷰의 정의는 ALTER문을 이용하여 변경할 수 없다.

    ❹ SQL을 사용하면 뷰에 대한 삽입, 갱신, 삭제 연산 시 제약사항이 없다.

 

 

뷰(View) 에 대한 개념과 특징을 묻는 문제입니다. 하나씩 보기 분석해볼게요! 😊


📘 뷰(View)란?

  • 하나 이상의 테이블에서 유도된 가상의 테이블
  • 실제 데이터를 저장하지 않고 논리적으로만 존재
  • SELECT문의 결과를 이름 붙여 저장해 사용하는 느낌
  • 보안이나 복잡한 질의를 단순화할 때 많이 사용함

🔍 보기 분석

✅ ① 뷰 위에 또 다른 뷰를 정의할 수 있다.

  • 맞습니다! 뷰를 기반으로 또 다른 뷰를 정의할 수 있어요. 이를 뷰의 중첩(View nesting) 이라고 해요.

✅ ② DBA는 보안 측면에서 뷰를 활용할 수 있다.

  • 맞습니다! 뷰를 사용하면 테이블의 일부분만 접근하게 하여 보안 목적으로 활용 가능해요.
    • 예: 급여 정보가 있는 테이블에서 이름과 부서만 보여주는 뷰 생성

⚠️ ③ 뷰의 정의는 ALTER문을 이용하여 변경할 수 없다.

  • 맞습니다! 일반적으로 ALTER VIEW 명령이 아닌, 기존 뷰를 DROP 후 CREATE하거나, 일부 DBMS에서는 CREATE OR REPLACE VIEW 를 사용해야 해요.
    • ALTER VIEW는 일부 DBMS에서는 존재하지만, 뷰 정의 자체를 자유롭게 바꾸는 건 제한적임.
    • 따라서 이 보기 자체는 참으로 간주됩니다.

❌ ❹ SQL을 사용하면 뷰에 대한 삽입, 갱신, 삭제 연산 시 제약사항이 없다.

  • 틀렸습니다! 바로 정답입니다.
  • 뷰는 제약사항이 많습니다!
    • 예:
      • 집계 함수(SUM, AVG 등) 포함된 뷰 → 수정 불가
      • 조인된 뷰 → 삽입/수정 어려움
      • 기본 키 없는 뷰 → 갱신 안 됨
  • 삽입/갱신/삭제는 단순한 뷰에서만 허용되고, 대부분의 경우 제한이 있어요.

✅ 최종 정답:

SQL로 뷰에 대해 삽입, 갱신, 삭제 시 제약사항이 없는 것이 아니라, 오히려 제약이 많다! 😮