정보처리기사 CBT
종목 메뉴

개념 한 쪽

정보처리기사 뷰(View) — 가상 테이블의 특성과 제약

뷰는 하나 이상의 테이블로부터 유도되는 가상 테이블이다. 정보처리기사에서는 '실제 데이터를 저장하지 않는다'는 본질과 생성·변경 문법, 갱신 제약이 거의 매번 출제된다.

2026-10-15 기준 · 정보처리기사 대시보드

이 개념을 문제로 확인하고 싶으면 이 개념 문제 10개 풀기 회원용

가입 없이 오늘의 10문제 바로 풀기 →

시험에 이렇게 나온다

출제기준 단원 「뷰」의 공개 문제 3개를 묻는 꼴별로 나누면 이렇습니다.

묻는 꼴문제 수무엇을 묻나
뷰 설명의 옳고 그름1가상 테이블의 성격에 어긋나는 설명
뷰의 장점과 활용1뷰를 쓰는 이유와 제약 상황
뷰 관련 객체 구분1뷰와 인덱스 등 객체의 특징 비교

뜻

뷰(View)는 하나 이상의 기본 테이블로부터 유도되어 만들어지는 가상 테이블이다. 뷰 자체는 실제 데이터를 물리적으로 저장하지 않고 정의문만 저장되며, 질의 결과가 논리적으로 표현될 뿐 실제 데이터는 기본 테이블에 있다. 그래서 '뷰에는 데이터가 물리적 구조로 생성된다'는 설명은 뷰의 본질과 정반대인 오답이다.

뷰의 관리 문법은 CREATE로 생성하고 DROP으로 삭제하며 SELECT로 조회한다. 정의를 변경할 때는 ALTER VIEW를 쓰지 않고 CREATE OR REPLACE VIEW를 사용하거나 DROP 후 다시 CREATE한다. 뷰는 중첩되어 생성될 수 있고, 기반 테이블이 제거되면 그 뷰도 무효화된다.

뷰의 장점과 한계도 구분해서 외워야 한다. 뷰는 논리적 데이터 독립성을 제공하고, 접근 제어를 통한 보안 기능과 복잡한 질의의 단순화, 관리의 단순화, 다중 사용자 지원에 활용된다. 반면 기본 테이블의 구조가 바뀌면 뷰도 다시 정의해야 하므로 정의 변경이 자동으로 이루어지지 않는다. 갱신 연산의 제약도 중요하다. 모든 뷰가 기본 테이블과 동일한 삽입·삭제·갱신 연산을 지원하는 것은 아니며, 조인이나 집계 함수가 포함된 뷰는 갱신이 제한되거나 불가능하다. 뷰는 자체 인덱스를 가질 수 없다는 점도 함께 기억해 둔다.

예제

'뷰에 대한 설명으로 옳지 않은 것은?' 문제의 오답 보기는 대개 '실제 데이터가 물리적으로 저장된다', '기본 테이블과 항상 동일한 갱신 연산이 가능하다', 'ALTER VIEW로 정의를 변경한다' 셋 중 하나다. 가상 테이블이라는 본질, CREATE OR REPLACE 문법, 조인·집계 뷰의 갱신 제약 세 가지만 짚으면 모두 걸러진다.

대표 기출 3문항

데이터베이스의 뷰(view)에 관한 설명으로 옳지 않은 것은?

  1. 하나 이상의 테이블에서 유도되는 가상 테이블이다.
  2. 뷰 정의문 및 데이터가 물리적 구조로 생성된다.
  3. 뷰를 이용한 또 다른 뷰의 생성이 가능하다.
  4. 삽입, 갱신, 삭제 연산에는 제약이 따른다.
정답과 해설 보기

정답 ② · 데이터베이스 뷰의 성격에 대한 옳지 않은 설명을 고르는 문제이다. 뷰는 하나 이상의 기본 테이블로부터 유도되는 가상 테이블로, 실제 데이터를 물리적으로 저장하지 않고 정의문만 데이터 사전에 저장된다.

뷰는 가상 테이블로 물리적으로 데이터를 저장하지 않으며, 정의문만 존재한다.

하나 이상의 테이블로부터 유도되어진 가상 테이블을 뷰(View)라 한다. SQL의 뷰에 대한 설명으로 옳지 않은 것은?

  1. 뷰(View)를 제거하고자 할때는 DROP 문을 이용한다.
  2. 뷰(View)의 정의를 변경하고자 할때는 ALTER 문을 이용한다.
  3. 뷰(View)를 생성하고자 할때는 CREATE 문을 이용한다.
  4. 뷰(View)의 내용을 검색하고자 할때는 SELECT 문을 이용한다.
정답과 해설 보기

정답 ② · SQL의 뷰 관련 명령문 중 옳지 않은 설명을 고르는 문제이다. 뷰는 하나 이상의 테이블로부터 유도되는 가상 테이블로, 생성은 CREATE VIEW, 제거는 DROP VIEW, 검색은 SELECT 문으로 수행한다.

뷰(View)는 가상 테이블이므로 생성·삭제·조회는 각각 CREATE, DROP, SELECT로 처리한다.

뷰(view)에 대한 설명으로 부적합한 것은?

  1. 논리적 데이터 독립성을 제공한다.
  2. 접근 제어를 통한 보안을 제공한다.
  3. 뷰 정의의 변경이 용이하다.
  4. 사용자의 데이터 관리를 간단하게 해준다.
정답과 해설 보기

정답 ③ · 뷰(View)는 가상의 테이블로서 실제 데이터를 저장하지는 않지만 논리적 데이터 독립성을 제공하고(1번), 사용자가 특정 데이터만 접근하도록 제한하여 보안성을 높이며(2번), 복잡한 쿼리를 단순화하여 사용자의 데이터 관리를 편리하게 해줍니다(4번). 하지만 뷰는 기본 테이블(BTABLE)에 의존하므로 기본 테이블 구조가 변경되면 뷰의 정의도 함께 변경되거나 재생성해야 하므로, 뷰 정의의 변경이 무조건 용이하다는 설명은 부적합합니다.

뷰는 기본 테이블 구조 변경 시 함께 수정해야 하므로 정의 변경이 용이하다는 설명은 부적합하다.

자주 묻는 물음

뷰에 실제 데이터가 저장되나요?
되지 않습니다. 뷰는 가상 테이블로서 정의문만 저장되고, 실제 데이터는 기본 테이블에 저장됩니다.
뷰의 정의를 변경하는 명령은 무엇인가요?
CREATE OR REPLACE VIEW 또는 DROP 후 CREATE입니다. ALTER VIEW는 뷰 정의 변경에 쓰지 않습니다.
뷰가 제공하는 장점은 무엇인가요?
논리적 데이터 독립성 제공, 접근 제어를 통한 보안, 복잡한 질의의 단순화, 관리 단순화 등입니다. 단, 기본 테이블 구조가 바뀌면 뷰도 다시 정의해야 하고 갱신 연산에는 제약이 따릅니다.
이 개념 문제 10개 풀기 회원용

정보처리기사 풀이 세트에서 이 개념의 문제 10개를 바로 풀어 보세요.