자격증 요약/정보처리기사

[23년 1회 3과목] 정보처리기사 필기 문제 풀이

문성 2026. 1. 29. 13:26

제3과목: 데이터베이스 구축 (41~60번)

정보처리기사 필기 기출문제
24년 3회 1과목 2과목 3과목 4과목 5과목
24년 2회 1과목 2과목 3과목 4과목 5과목
24년 1회 1과목 2과목 3과목 4과목 5과목
23년 3회 1과목 2과목 3과목 4과목 5과목
23년 2회 1과목 2과목 3과목 4과목 5과목
23년 1회 1과목 2과목 3과목 4과목 5과목

41. CREATE TABLE문에 포함되지 않는 기능은?

① 속성 타입 변경

② 속성의 NOT NULL 여부 지정

③ 기본키를 구성하는 속성 지정

④ CHECK 제약조건의 정의

CREATE TABLE (테이블 생성)
 - 새로운 테이블을 처음 만들 때 사용하는 명령
 - 속성(컬럼) 정의: 이름과 데이터 타입을 지정
 - 제약조건 지정: NOT NULL, PRIMARY KEY(기본키), UNIQUE, CHECK(조건 검사), FOREIGN KEY 등을 생성 시점에 함께 정의

ALTER TABLE (테이블 수정)
 - 이미 만들어진 테이블의 구조를 바꿀 때 사용하는 명령입니다.
 - 속성 타입 변경: 이미 정의된 컬럼의 데이터 타입을 바꾸는 것은 ALTER TABLE ~ MODIFY 또는 ALTER COLUMN 명령이 담당
 - 그 외에도 컬럼 추가(ADD), 컬럼 삭제(DROP), 제약조건 추가/삭제 등을 수행합니다.

DROP TABLE (테이블 삭제)
테이블 자체를 완전히 제거

답: 1번
 

42. 테이블 두 개를 조인하여 뷰 V_1을 정의하고, V_1을 이용하여 뷰 V_2를 정의하였다. 다음 명령 수행 후 결과로 옳은 것은?

DROP VIEW V_1 CASCADE; 

① V_1만 삭제된다. 

② V_2만 삭제된다. 

③ V_1과 V_2 모두 삭제된다. 

④ V_1과 V_2 모두 삭제되지 않는다.

DROP VIEW V_1 CASCADE; → V_1을 삭제

CASCADE
 (연쇄) : 부모 테이블의 데이터를 삭제/수정하면, 이를 참조하는 자식 테이블의 데이터도 함께 삭제/수정됩니다.
 → V_1, V_2 전부 삭제 됨

RESTRICT
 (제한) : 자식 테이블이 해당 데이터를 참조하고 있다면, 부모 테이블의 데이터를 삭제/수정하지 못하도록 차단합니다.
 → V_2가 V_1을 참조하고 있으므로 V_1삭제 명령이 수행되지 않음

SET NULL : 부모 데이터를 삭제/수정하면, 자식 테이블의 해당 값을 NULL로 변경합니다.
SET DEFAULT : 부모 데이터를 삭제/수정하면, 자식 테이블의 해당 값을 기본값(Default)으로 변경합니다.

답: 3번
"연쇄적으로 같이 지운다" = CASCADE,
"참조 중이면 못 지우게 막는다" = RESTRICT

 

43. 관계해석에서 '모든 것에 대하여'의 의미를 나타내는 논리 기호는?

① ∃

② ∈

③ ∀

④ ⊂

관계해석
∀ (전칭 정량자) : 가능한 모든 튜플에 대하여 (For All)
∃ (존재 전량자) : 하나라도 일치하는 튜플이 있음 (There Exists)

② ∈: 집합의 원소 기호입니다. "원소로 포함된다"는 뜻입니다.
④ ⊂: 부분집합 기호입니다. "집합 A가 집합 B에 포함된다"는 뜻입니다.

답: 3번

 

44. 다음 SQL문의 실행결과로 생성되는 튜플 수는?

① 1

② 3

③ 4

④ 5

차수 (Degree, 속성의 수): 세로 줄 개수 (, Attribute, Column
공식: Degree(R) + Degree(S) → 3 + 4 = 7

카디널리티 (Cardinality, 튜플의 수): 가로 줄 개수 (, Tuple, Row)
공식: Cardinality(R) x Cardinality(S) → 3 x 4 = 12

※중복 제거가 없으므로 그대로 나온다.

답: 4번
 

45. 데이터베이스에서 개념적 설계 단계에 대한 설명으로 틀린 것은?

① 산출물로 E-R Diagram을 만들 수 있다.

② DBMS에 독립적인 개념 스키마를 설계한다.

③ 트랜잭션 인터페이스를 설계 및 작성한다.

④ 논리적 설계 단계의 앞 단계에서 수행된다.

데이터베이스 설계 단계별 특징 (요구----구현)
1. 요구 조건 분석 (Requirement Analysis)
 - 사용자의 요구사항을 수집하고 분석하여 '요구 조건 명세서'를 작성합니다.

2. 개념적 설계 (Conceptual Design)
 - 개념 스키마 모델링과 트랜잭션 모델링을 병행 수행한다.
 - 요구 분석 단계에서 나온 결과인 요구 조건 명세를 DBMS에 독립적인 E-R 다이어그램으로 작성한다.
 - DBMS에 독립적인 개념 스키마를 설계한다.

3. 논리적 설계 (Logical Design)
 - 개념 세계의 데이터를 필드로 기술된 데이터 타입과 이 데이터 타입들 간의 관계로 표현되는 논리적 구조의 데이터로 모델화한다.
 - 개념 스키마를 설계하는 단계라면 논리적 설계에서는 개념 스키마를 평가 및 정제하고 DBMS에 따라 서로 다른 논리적 스키마를 설계하는 단계이다.
 - 트랜잭션의 인터페이스를 설계한다.
 - 관계형 데이터베이스라면 테이블을 설계하는 단계이다.

4. 물리적 설계 (Physical Design)
 - 다양한 데이터베이스 응용에 대해 처리 성능을 얻기 위해 데이터베이스 파일의 저장 구조 및 액세스 경로를 결정한다.
 - 저장 레코드의 양식, 순서, 접근 경로, 조회가 집중되는 레코드와 같은 정보를 사용하여 데이터가 컴퓨터에 저장되는 방법을 묘사한다.
 - 물리적 설계 시 고려할 사항 : 트랜잭션 처리량, 응답 시간, 디스크 용량, 저장 공간의 효율화 등

5. 구현 (Implementation)
 - DDL을 사용하여 실제 데이터베이스와 테이블을 생성합니다.

답: 3번
트랜잭션 인터페이스는 논리적 설계에 해당
 

46. 테이블 R과 S에 대한 SQL문이 실행되었을 때, 실행결과로 옳은 것은? 

UNION : 두 결과 세트를 합칩니다. 중복된 행은 제거하고 한 번만 표시합니다. (수학의 합집합)
UNION ALL : 두 결과 세트를 합칩니다. 중복된 행도 그대로 다 보여줍니다. (연산 속도가 UNION보다 빠름)
INTERSECT: 두 결과 세트의 공통된 행만 추출합니다. (수학의 교집합)
EXCEPT (또는 MINUS): 첫 번째 결과 세트에서 두 번째 결과 세트와 겹치는 부분을 제외하고 남은 것만 보여줍니다. (수학의 차집합)

답: 4번

 

47. 제3정규형(3NF)에서 BCNF(Boyce-Codd Normal Form)가 되기 위한 조건은?

① 결정자가 후보키가 아닌 함수 종속 제거

② 이행적 함수 종속 제거

③ 부분적 함수 종속 제거

④ 원자값이 아닌 도메인 분해

정규화 (도부이결다조)
1NF (제1정규형): 메인이 원자 값 (다중 값 제거)
2NF (제2정규형): 분 함수적 종속 제거 (완전 함수적 종속 만족)
3NF (제3정규형): 행적 함수적 종속 제거 (X → Y 이고 Y → Z 이면 X → Z)
BCNF: 정자이면서 후보키가 아닌 것 제거
4NF (제4정규형): 치 종속 제거
5NF (제5정규형): 인 종속 제거

답: 1번
 

48. 관계 데이터 모델의 무결성 제약 중 기본키 값의 속성 값이 널(Null) 값이 아닌 원자 값을 갖는 성질은?

① 개체 무결성

② 참조 무결성

③ 도메인 무결성

④ 튜플의 유일성

무결성 제약 조건
개체
 무결성 (Entity Integrity) : 기본키(Primary Key)는 NULL 값을 가질 수 없으며, 중복될 수도 없음
 - 테이블에서 각 튜플(행)을 유일하게 식별해야 하기 때문

참조 무결성 (Referential Integrity) : 외래키(Foreign Key) 값은 참조하는 테이블의 기본키 값과 동일하거나, NULL이어야 함
 - 존재하지 않는 데이터를 참조하는 오류를 방지하기 위함 (예: 없는 부서 번호를 사원 정보에 입력할 수 없음)

도메인 무결성 (Domain Integrity) : 특정 속성(열)의 값은 그 속성에 정의된 도메인(범위)에 속한 값이어야 함
 - '성별'이라는 속성에 '남', '여' 외의 값이 들어오면 안 되는 규칙

답: 1번
"Null" + "원자" → 개체 무결성
 

49. 병행제어의 로킹(Locking) 단위에 대한 설명으로 옳지 않은 것은?

① 데이터베이스, 파일, 레코드 등은 로킹 단위가 될 수 있다.

② 로킹 단위가 작아지면 로킹 오버헤드가 증가한다.

③ 한꺼번에 로킹할 수 있는 단위를 로킹 단위라고 한다.

④ 로킹 단위가 작아지면 병행성 수준이 낮아진다.

병행제어 기법의 종류
로킹 (Locking)
 - 주요 데이터의 액세스를 상호 배타적으로 하는 것
 - 트랜잭션들이 어떤 로킹 단위를 액세스하기 전에 Lock(잠금)을 요청해서 Lock이 허락되어야만 그 로킹 단위를 액세스할 수 있도록 하는 기법

로킹 단위
 - 병행제어에서 한꺼번에 로킹할 수 있는 객체의 크기를 의미
 - 데이터베이스, 파일, 레코드, 필드 등이 로킹 단위가 될 수 있다.
 - 로킹 단위가 크면 로크 수가 작아 관리하기 쉽지만 병행성 수준이 낮아지고, + 공유도 감소
 - 로킹 단위가 작으면 로크 수가 많아 관리하기 복잡해 오버헤드가 증가하지만 병행성 수준은 높아진다. + 공유도 증가

답: 4번
 

50. 트랜잭션의 상태 중 트랜잭션의 마지막 연산이 실행된 직후의 상태로, 모든 연산의 처리는 끝났지만 트랜잭션이 수행한 최종 결과를 데이터베이스에 반영하지 않은 상태는?

① Active

② Partially Committed

③ Committed

④ Aborted

트랜잭션 상태
Active (활동, 실행 중)
 - 트랜잭션이 현재 실행 중인 상태입니다.

Partially Committed (부분 완료)
 - 트랜잭션의 마지막 명령까지 완료했지만, 아직 그 결과를 데이터베이스에 최종적으로 저장(Commit)하기 직전의 상태입니다.
 - 이 상태에서 최종 확인을 거쳐 문제가 없으면 Committed로 가고, 문제가 생기면 Failed로 갑니다.

Committed (완료)
 - 트랜잭션이 성공적으로 끝나서 변경 내용을 데이터베이스에 영구적으로 반영한 상태입니다.

Failed (실패)
 - 트랜잭션 실행 중 오류가 발생하여 더 이상 정상적으로 진행할 수 없는 상태입니다.

Aborted (철회)
 - 트랜잭션 실행이 실패하여 Rollback 연산을 수행한 후, 트랜잭션 시작 전의 상태로 완전히 되돌아간 상태입니다.

답: 2번
 

51. 테이블의 기본키(Primary Key)로 지정된 속성에 관한 설명으로 가장 거리가 먼 것은?

① NOT NULL로 널 값을 가지지 않는다.

② 릴레이션에서 튜플을 구별할 수 있다.

③ 외래키로 참조될 수 있다.

④ 검색할 때 반드시 필요하다.

키 (Key)
후보키 (Candidate Key)
 - 릴레이션을 구성하는 속성들 중에서 튜플을 유일하게 식별하기 위해 사용하는 속성들의 부분집합
 - 기본키로 사용할 수 있는 속성들을 말함
 - 후보키는 릴레이션에 있는 모든 튜플에 대해서 유일성과 최소성을 만족시켜야 함.

기본키 (Primary Key)
 - 후보키 중에서 특별히 선정된 주키(Main Key)로 중복된 값을 가질 수 없음
 - 한 릴레이션에서 특정 튜플을 유일하게 구별할 수 있는 속성
 - 기본키는 NULL 값을 가질 수 없음.

대체키 (Alternate Key)
 - 후보키가 둘 이상일 때 기본키를 제외한 나머지 후보키를 의미
 - 보조키

슈퍼키 (Super Key)
 - 한 릴레이션 내에 있는 속성들의 집합으로 구성된 키로서 릴레이션을 구성하는 모든 튜플들 중 슈퍼키로 구성된 속성의 집합과 동일한 값은 나타나지 않음
 - 슈퍼키는 릴레이션을 구성하는 모든 튜플에 대해 유일성은 만족시키지만, 최소성은 만족시키지 못 함

외래키 (Foreign Key)
 - 다른 릴레이션의 기본키를 참조하는 속성 또는 속성들의 집합을 의미
 - 한 릴레이션에 속한 속성 A와 참조 릴레이션의 기본키인 B가 동일한 도메인 상에서 정의되었을 때의 속성 A를 외래키라고 함

답: 4번
검색하는데 있어 기본키가 '반드시' 필요한 것은 아니다.
기본키가 없어도 검색 된다.
 

52. DELETE 명령에 대한 설명으로 틀린 것은?

① 테이블의 행을 삭제할 때 사용한다.

② WHERE 조건절이 없는 DELETE 명령을 수행하면 DROP TABLE 명령을 수행했을 때와 동일한 효과를 얻을 수 있다.

③ SQL을 사용 용도에 따라 분류할 경우 DML에 해당한다.

④ 기본 사용 형식은 "DELETE FROM 테이블 [WHERE 조건];"

DELETE (DML - 데이터 조작어):
 - 테이블의 데이터(행, Tuple)를 삭제합니다.
 - WHERE 절을 사용하여 특정 조건의 행만 지울 수 있습니다.

DROP (DDL - 데이터 정의어):
 - 테이블의 구조 자체를 완전히 제거합니다.
 - 이 명령을 수행하면 데이터는 물론 테이블이라는 '그릇' 자체가 깨져서 없어집니다. 나중에 다시 데이터를 넣으려면 CREATE TABLE부터 다시 해야 합니다.

TRUNCATE (DDL - 데이터 정의어)
테이블의 모든 데이터를 한 번에 삭제합니다. DELETE보다 속도가 빠르며, 테이블 구조는 남겨둡니다.

답: 2번
WHERE 절 없이 DELETE를 하면 모든 데이터가 지워지긴 하지만, 테이블의 구조(틀)는 그대로 남아 있다.
 

53. 관계 대수식을 SQL 질의로 옳게 표현한 것은?

π이름(학과 = '교육'(학생))

① SELECT 학생 FROM 이름 WHERE 학과 = '교육'; 

② SELECT 이름 FROM 학생 WHERE 학과 = '교육'; 

③ SELECT 교육 FROM 학과 WHERE 이름 = '학생'; 

④ SELECT 학과 FROM 학생 WHERE 이름 = '교육';

π이름 → SELECT 이름
(학과 = '교육'(학생)) → WHERE 학과 = '교육'


순수 관계 연산자
Select ( σ ) : 릴레이션에서 특정 조건을 만족하는 튜플(행)을 구하는 연산
Project ( π ) : 릴레이션에서 주어진 속성(열) 리스트에 해당하는 값들만 추출하는 연산
Join (  ) : 공통 속성을 중심으로 두 개의 릴레이션을 하나로 합쳐서 새로운 릴레이션을 만듦
Division ( ÷ ) : 릴레이션 S의 모든 조건을 만족하는 릴레이션 R의 튜플들을 추출

답: 2번

 

54. 분산 데이터베이스의 특징에 대한 설명으로 틀린 것은?

① 지역 서버의 고유 데이터에 대한 작업은 중앙 서버의 통제 없이 자유롭게 수행할 수 있다.

② 새로운 지역 서버를 추가하거나 장비를 추가하는 등의 작업이 용이하다.

③ 위치 투명성, 중복 투명성, 병행 투명성, 장애 투명성을 목표로 한다.

④ 데이터베이스 설계 및 소프트웨어 개발이 쉽고, 전반적인 시스템의 성능이 향상된다.

분산 데이터베이스의 장점
 - 지역 자치성이 높음
 - 자료의 공유성이 향상됨
 - 분산 제어가 가능
 - 시스템 성능이 향상됨
 - 중앙 컴퓨터의 장애가 전체 시스템에 영향을 끼치지 않음
 - 효용성과 융통성이 높음
 - 신뢰성 및 가용성이 높음
 - 점진적 시스템 용량 확장이 용이함

분산 데이터베이스의 단점
 - DBMS가 수행할 기능이 복잡함
 - 데이터베이스 설계가 어려움
 - 소프트웨어 개발 비용이 증가함
 - 처리 비용이 증가함
 - 잠재적 오류가 증가함

분산 데이터베이스의 목표
 - 위치 투명성 : 액세스하려는 데이터베이스의 실제 위치를 알 필요 없이 단지 데이터베이스의 논리적인 명칭만으로 액세스할 수 있음
 - 중복 투명성 : 동일 데이터가 여러 곳에 중복되어 있떠라도 사용자는 마치 하나의 데이터만 존재하는 것처럼 사용하고, 시스템은 자동으로 여러 자료에 대한 작업을 수행함
 - 병행 투명성 : 분산 데이터베이스와 관련된 다수의 트랜잭션들이 동시에 실현되더라도 그 트랜잭션의 결과는 영향을 받지 않음
 - 장애 투명성 : 트랜잭션, DBMS, 네트워크, 컴퓨터 장애에도 불구하고 트랜잭션을 정확하게 처리함

분산 데이터베이스 시스템의 주요 구성 요소
 - 분산 처리기 (Distributed Processor): 자체적인 처리 능력을 가지며 지리적으로 분산되어 있는 컴퓨터 시스템입니다.
 - 분산 데이터베이스 (Distributed Database): 지리적으로 분산되어 있는 데이터베이스입니다. 
 - 통신 네트워크 (Communication Network): 분산 처리기들을 연결하여 자원을 공유할 수 있도록 하는 통신망입니다. 

답: 4번
"분산"이라는 말이 나오면 "성능과 가용성은 좋아지지만, 복잡해져서 관리나 설계는 힘들어진다"고 기억
 

55. 다음 관계형 데이터 모델에 대한 설명으로 옳은 것은?

① Relation 3개, Attribute 3개, Tuple 5개

② Relation 3개, Attribute 5개, Tuple 3개

③ Relation 1개, Attribute 5개, Tuple 3개

④ Relation 1개, Attribute 3개, Tuple 5개

릴레이션 (Relation) : 테이블 그 자체를 의미
 - 테이블 1개 → 릴레이션 1개

차수 (Degree, 속성의 수): 세로 줄 개수 (, Attribute, Column
 - 고객ID, 고객이름, 거주도시 → 세로 줄이 총 3이므로 차수는 3

카디널리티 (Cardinality, 튜플의 수): 가로 줄 개수 (, Tuple, Row)
 - 데이터 행이 5개 존재하므로 카디널리티는 5입니다.
 - (보통 제목 행은 제외하고 실제 데이터의 줄 수를 셉니다.)

답: 4번
 

56. SQL의 분류 중 DDL에 해당하지 않는 것은?

① UPDATE

② ALTER

③ DROP

④ CREATE

DML (Data Manipulation Language, 데이터 조작어) : 테이블 내의 실제 데이터를 조회, 삽입, 수정, 삭제할 때 사용
 - SELECT: 데이터 조회
 - INSERT: 데이터 삽입
 - UPDATE: 데이터 수정
 - DELETE: 데이터 삭제

DDL (Data Definition Language, 데이터 정의어) : 데이터베이스 구조(테이블, 인덱스, 뷰 등)를 생성, 변경, 삭제할 때 사용
 - CREATE: 구조 생성
 - ALTER: 구조 변경
 - DROP: 구조 삭제
 - TRUNCATE: 테이블의 모든 데이터 삭제 (구조는 남김)

DCL (Data Control Language, 데이터 제어어) : 데이터의 보안, 무결성, 회복, 병행 제어 등을 위해 사용합니다.
 - GRANT: 권한 부여
 - REVOKE: 권한 취소
 - COMMIT / ROLLBACK: 트랜잭션 제어 

답: 1번
 

57. 데이터의 중복으로 인하여 관계 연산을 처리할 때 예기치 못한 곤란한 현상이 발생하는 것을 무엇이라 하는가?

① 이상(Anomaly)

② 제한(Restriction)

③ 종속성(Dependency)

④ 변환(Translation)

정규화를 하지 않았을 때 발생하는 이상(Anomaly) 현상 (삽살개 → 삽삭갱)
삽입 이상 (Insertion) : 릴레이션에 데이터를 삽입할 때 의도와는 상관없이 원하지 않은 값들도 함께 삽입되는 현상
삭제 이상 (Deletion) : 릴레이션에서 한 튜플을 삭제할 때 의도와는 상관없는 값들도 함께 삭제되는 연쇄가 일어나는 현상
갱신 이상 (Update) : 릴레이션에서 튜플에 있는 속성값을 갱신할 때 일부 튜플의 정보만 갱신되어 정보에 모순이 생기는 현상

답: 1번
"데이터 중복, 곤란한 현상 발생" → 이상(Anomaly)
이 이상 현상을 해결하기 위해 수행하는 과정이 바로 정규화(Normalization)
 

58. 학적 테이블에서 전화번호가 Null 값이 아닌 학생명을 모두 검색할 때, SQL 구문으로 옳은 것은?

① SELECT 학생명 FROM 학적 WHERE 전화번호 DON'T NULL;

② SELECT 학생명 FROM 학적 WHERE 전화번호 != NOT NULL;

③ SELECT 학생명 FROM 학적 WHERE 전화번호 IS NOT NULL;

④ SELECT 학생명 FROM 학적 WHERE 전화번호 <> NULL;

NULL이 조건절(WHERE)에 등장하면 IS 또는 IS NOT이 붙어야한다.
IS NOT NULL : NULL이 아닌 값
IS NULL : NULL인 값

답: 3번
 

59. 릴레이션의 특징으로 옳은 내용 모두를 나열한 것은?

ㄱ. 모든 튜플은 서로 다른 값을 갖는다.
ㄴ. 각 속성은 릴레이션 내에서 유일한 이름을 가진다.
ㄷ. 하나의 릴레이션에서 튜플의 순서는 없다.
ㄹ. 모든 속성 값은 원자 값이다.

① ㄱ, ㄷ

② ㄱ, ㄴ, ㄹ

③ ㄴ, ㄷ, ㄹ

④ ㄱ, ㄴ, ㄷ, ㄹ

릴레이션(Relation)의 특징
 - 한 릴레이션에는 똑같은 튜플이 포함될 수 없으므로 릴레이션에 포함된 튜플들은 모두 상이하다.
 - 한 릴레이션에 포함된 튜플 사이에는 순서가 없다.
 - 튜플들의 삽입, 삭제 등의 작업으로 인해 릴레이션은 시간에 따라 변한다.
 - 릴레이션 스키마를 구성하는 속성들 간의 순서는 중요하지 않다.
 - 속성의 유일한 식별을 위해 속성의 명칭은 유일해야 하지만, 속성을 구하는 값은 동일한 값이 있을 수 있다.
 - 릴레이션을 구성하는 튜플을 유일하게 식별하기 위해 속성들의 부분집합을 키(Key)로 설정한다.
 - 속성의 값은 논리적으로 더 이상 쪼갤 수 없는 원자값만을 저장한다.

답: 4번
 

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

① 뷰는 독자적인 인덱스를 가질 수 없다.

② 뷰는 논리적 독립성을 제공한다.

③ 뷰로 구성된 내용에 대한 삽입, 갱신, 삭제 연산에는 제약이 따른다.

④ 뷰가 정의된 기본 테이블이 삭제되더라도 뷰는 자동적으로 삭제되지 않는다.

뷰(View) : 사용자에게 접근이 허용된 자료만을 제한적으로 보여주기 위해 하나 이상의 기본 테이블로부터 유도된, 이름을 가지는 가상 테이블 → 테이블을 참조하는 가상 테이블이므로, 참조하고 있는 테이블이 삭제되면 뷰(View)도 삭제된다.

뷰(View) 특징
 - 뷰는 기본 테이블로부터 유도된 테이블이기 때문에 기본 테이블과 같은 형태의 구조를 사용하며, 조작도 기본 테이블과 거의 같다
 - 뷰는 가상 테이블이기 때문에 물리적으로 구현되어 있지 않다. → 물리적으로 존재하지 않아서 인덱스를 생성하거나 가질 수 없다.
 - 데이터의 논리적 독립성을 제공할 수 있다.
 - 필요한 데이터만 뷰로 정의해서 처리할 수 있기 때문에 관리가 용이하고 명령문이 간단해진다.
 - 뷰를 통해서만 데이터에 접근하게 하면 뷰에 나타나지 않는 데이터를 안전하게 보호하는 효율적인 기법으로 사용할 수 있다.
 - 기본 테이블의 기본키를 포함한 속성(열) 집합으로 뷰를 구성해야만 삽입, 삭제, 갱신 연산이 가능하다. (제약)
 - 일단 정의된 뷰는 다른 뷰의 정의에 기초가 될 수 있다.
 - 뷰를 정의할 때는 CREATE문, 제거할 때는 DROP문을 사용한다.

답: 4번

정보처리기사 필기 기출문제
24년 3회 1과목 2과목 3과목 4과목 5과목
24년 2회 1과목 2과목 3과목 4과목 5과목
24년 1회 1과목 2과목 3과목 4과목 5과목
23년 3회 1과목 2과목 3과목 4과목 5과목
23년 2회 1과목 2과목 3과목 4과목 5과목
23년 1회 1과목 2과목 3과목 4과목 5과목