정보처리기사 데이터베이스 구축 예상문제
데이터베이스 구축은 정보처리기사 필기 4개 과목 가운데 하나입니다(출제 비율 약 25%). CertHub가 이 과목으로 제작한 25문항 중 8문항을 정답·해설과 함께 아래에 실었습니다.
데이터베이스 구축 공략 — 정규화와 SQL 문법은 직접 손으로 써보며 반복 학습하는 게 효과적이에요.
데이터베이스 구축 과목 개요
데이터베이스 구축 문항은 키와 무결성 제약, 정규화와 이상 현상, E-R 다이어그램, 릴레이션의 차수와 카디널리티, 관계대수 연산, DDL·DML·DCL 명령어, 조인과 GROUP BY 결과 계산, 뷰와 인덱스, 시스템 카탈로그, 트랜잭션의 ACID와 격리 수준, 로그 기반 회복과 로킹 단위를 다룹니다. 2027년 출제기준에 맞춰 트리거 같은 절차형 SQL, RANK·DENSE_RANK 윈도우 함수, 파티셔닝과 반정규화, ETL 데이터 전환 문항도 넣었습니다.
개념 정의 문항이 많지만 짧은 SQL을 주고 결과 행 수를 세게 하는 문항이 꼭 섞여 나옵니다. 외부 조인에서 매칭되지 않는 행이 어떻게 남는지, HAVING이 그룹 단위로 걸러 낸다는 점을 직접 표를 그려 확인해 두면 실기 대비에도 도움이 됩니다. 키와 무결성, 관계대수를 먼저 정리한 뒤 SQL과 트랜잭션으로 넘어가는 순서가 자연스럽습니다.
출제 비중
정보처리기사 필기 80문항 중 20문항(25.0%)이 데이터베이스 구축 과목에서 출제됩니다.출처 Q-Net 정보처리기사 출제기준 (2027.1.1~2029.12.31)
데이터베이스 구축 핵심 개념 요약
- 키와 무결성 제약
- 후보키는 유일성과 최소성을 모두 만족하고, 유일성만 갖추면 슈퍼키입니다. 기본키는 릴레이션마다 하나만 지정하며 NULL이나 중복을 가질 수 없습니다. 외래키는 참조하는 기본키 값과 같거나 NULL이어야 한다는 것이 참조 무결성입니다.
- SQL 명령어의 분류
- 테이블 구조를 바꾸는 ALTER나 CREATE·DROP은 DDL, SELECT·INSERT·UPDATE·DELETE는 DML, 권한을 주고 회수하는 GRANT·REVOKE는 DCL입니다. DROP에 CASCADE를 붙이면 참조하는 개체까지 함께 지우고, RESTRICT는 참조가 있으면 취소합니다.
- 조인과 그룹 집계 결과
- LEFT OUTER JOIN은 왼쪽 테이블의 행을 모두 남기므로 짝이 없는 행도 NULL과 결합해 결과에 포함됩니다. GROUP BY로 묶은 뒤 HAVING은 그룹별 집계값에 조건을 걸어 해당 그룹만 남깁니다.
- 정규화와 관계 모델 용어
- 정규화는 중복을 줄여 삽입·삭제·갱신 이상을 없애는 것이 목적이며 테이블 수는 오히려 늘 수 있습니다. 릴레이션의 차수는 속성 수, 카디널리티는 튜플 수입니다. E-R 다이어그램에서 마름모는 관계, 사각형은 개체, 타원은 속성입니다.
- 관계대수 연산자
- 셀렉트는 σ로 조건을 만족하는 튜플을 고르고, 프로젝트는 π로 속성을 고릅니다. 순수 관계 연산자는 셀렉트·프로젝트·조인·디비전이며, 교차곱은 합집합·교집합·차집합과 함께 일반 집합 연산자에 속합니다.
- 트랜잭션과 회복·병행 제어
- 원자성은 트랜잭션이 전부 실행되거나 전혀 실행되지 않아야 한다는 성질입니다. READ UNCOMMITTED에서는 커밋 전 데이터를 읽는 Dirty Read가 생기고, 장애 뒤 커밋된 변경은 REDO로 다시 반영합니다. 로킹 단위가 커지면 로크 수는 줄지만 병행성이 낮아집니다.
- 절차형 SQL과 윈도우 함수
- 트리거는 테이블에 삽입·갱신·삭제 이벤트가 생기면 자동으로 실행되는 절차형 SQL이고, 값을 반드시 반환하는 것은 사용자 정의 함수입니다. RANK는 공동 순위 수만큼 다음 순위를 건너뛰고, DENSE_RANK는 건너뛰지 않습니다.
- 물리 설계와 데이터 전환
- 범위 분할은 날짜·숫자 구간으로, 해시 분할은 해시 값으로, 목록 분할은 지정한 값 목록으로 데이터를 나눕니다. 반정규화는 조회 성능을 위해 의도적으로 중복을 허용합니다. ETL은 추출, 변환, 적재 순이며 변환 단계에서 데이터를 정제·가공합니다.
정보처리기사 데이터베이스 구축 예상문제 미리보기
데이터베이스 구축 과목 25문항 중 8문항입니다. 정답과 해설은 눌러서 확인할 수 있습니다.
- 데이터베이스 구축1번 문항관계형 데이터베이스에서 기본키(Primary Key)의 특성으로 옳지 않은 것은?
- 1.NULL 값을 가질 수 없다
- 2.튜플을 유일하게 식별할 수 있다
- 3.하나의 릴레이션에 여러 개 지정할 수 있다
- 4.후보키 중에서 선택된 키이다
정답·해설 보기
정답 3번. 하나의 릴레이션에 여러 개 지정할 수 있다
기본키는 하나의 릴레이션에 단 하나만 지정할 수 있습니다. 여러 속성으로 구성될 수는 있지만 기본키 자체는 하나입니다.
- 데이터베이스 구축2번 문항SQL에서 테이블의 구조를 변경할 때 사용하는 명령어는?
- 1.ALTER
- 2.UPDATE
- 3.INSERT
- 4.SELECT
정답·해설 보기
정답 1번. ALTER
ALTER는 테이블 구조 변경에 사용하는 DDL 명령어입니다. UPDATE·INSERT는 데이터를 조작하는 DML, SELECT는 조회 명령어입니다.
- 데이터베이스 구축3번 문항정규화(Normalization)의 주된 목적으로 가장 적절한 것은?
- 1.데이터 검색 속도를 무조건 높이기 위해
- 2.삽입·삭제·갱신 이상(Anomaly)을 제거하기 위해
- 3.테이블 수를 줄이기 위해
- 4.데이터를 암호화하기 위해
정답·해설 보기
정답 2번. 삽입·삭제·갱신 이상(Anomaly)을 제거하기 위해
정규화는 중복을 최소화해 삽입·삭제·갱신 시 발생하는 이상 현상을 제거하는 것이 주 목적입니다. 정규화가 진행되면 테이블 수는 오히려 늘어날 수 있습니다.
- 데이터베이스 구축4번 문항트랜잭션의 ACID 특성 중 '트랜잭션의 연산은 전부 수행되거나 전혀 수행되지 않아야 한다'는 특성은?
- 1.원자성(Atomicity)
- 2.일관성(Consistency)
- 3.격리성(Isolation)
- 4.지속성(Durability)
정답·해설 보기
정답 1번. 원자성(Atomicity)
원자성은 트랜잭션이 부분적으로만 실행되는 일 없이 All or Nothing으로 처리되어야 함을 의미합니다.
- 데이터베이스 구축5번 문항학생 테이블에 학번이 1, 2, 3인 3개의 행이 있고, 수강 테이블에 학번이 1, 1, 2인 3개의 행이 있다.
위 SQL 실행 결과의 행(튜플) 수는?SELECT * FROM 학생 LEFT OUTER JOIN 수강 ON 학생.학번 = 수강.학번;- 1.2
- 2.3
- 3.4
- 4.6
정답·해설 보기
정답 3번. 4
학번 1은 수강 2건과 조인되어 2행, 학번 2는 1행이 되고, 매칭되는 수강 행이 없는 학번 3도 LEFT OUTER JOIN이므로 NULL과 결합되어 1행 포함된다. 따라서 총 4행이다.
- 데이터베이스 구축6번 문항뷰(View)에 대한 설명으로 옳지 않은 것은?
- 1.물리적으로 데이터를 저장하지 않는 가상 테이블이다.
- 2.뷰를 통한 삽입, 갱신, 삭제 연산은 아무런 제약 없이 항상 수행할 수 있다.
- 3.DROP 문을 사용하여 제거할 수 있다.
- 4.이미 정의된 뷰를 기반으로 또 다른 뷰를 정의할 수 있다.
정답·해설 보기
정답 2번. 뷰를 통한 삽입, 갱신, 삭제 연산은 아무런 제약 없이 항상 수행할 수 있다.
뷰는 집계 함수나 조인이 포함된 경우 등 정의에 따라 삽입, 갱신, 삭제 연산에 제약이 따른다. 나머지는 모두 뷰의 올바른 특징이다.
- 데이터베이스 구축7번 문항데이터베이스의 인덱스(Index)에 대한 설명으로 옳은 것은?
- 1.데이터 검색 속도를 높이기 위해 별도로 유지되는 보조 자료구조이다.
- 2.데이터의 삽입과 삭제가 발생해도 유지 비용이 전혀 들지 않는다.
- 3.하나의 테이블에는 반드시 하나의 인덱스만 생성할 수 있다.
- 4.인덱스를 생성하면 원본 테이블의 데이터가 삭제된다.
정답·해설 보기
정답 1번. 데이터 검색 속도를 높이기 위해 별도로 유지되는 보조 자료구조이다.
인덱스는 검색 성능 향상을 위해 키 값과 저장 위치를 별도로 관리하는 자료구조이다. 다만 삽입·삭제·갱신 시 인덱스도 함께 갱신해야 하므로 유지 비용이 발생하며, 한 테이블에 여러 인덱스를 만들 수 있다.
- 데이터베이스 구축8번 문항다른 트랜잭션이 아직 커밋하지 않은 데이터를 읽는 현상(Dirty Read)이 발생할 수 있는 트랜잭션 격리 수준은?
- 1.SERIALIZABLE
- 2.REPEATABLE READ
- 3.READ COMMITTED
- 4.READ UNCOMMITTED
정답·해설 보기
정답 4번. READ UNCOMMITTED
READ UNCOMMITTED는 가장 낮은 격리 수준으로, 커밋되지 않은 변경 데이터를 다른 트랜잭션이 읽을 수 있어 Dirty Read가 발생한다. READ COMMITTED 이상의 수준에서는 Dirty Read가 방지된다.
데이터베이스 구축만 골라서 모의고사 풀기
CBT 모의고사에서 과목을 데이터베이스 구축으로 지정하면 이 과목 문항만 출제됩니다. 전체 100문항을 무료로 풀 수 있어요.
정보처리기사 CBT 모의고사 시작하기CertHub 예상문제집 · PDF
정보처리기사 예상문제 100제
데이터베이스 구축을 포함해 전 과목을 정답·해설과 함께 인쇄해서 풀어 보세요.
- 출제기준 과목 구성에 맞춘 자체 제작 예상문제
- 전 문항 정답 · 해설 수록 (오답 보기까지)
- 빠른 정답표로 먼저 채점 → 틀린 문항만 정독
- A4 인쇄 최적화 PDF, 가정용 프린터 출력 가능
기출문제 원본이 아닌 CertHub 자체 제작 예상문제입니다. 디지털 콘텐츠 특성상 다운로드가 시작된 이후에는 환불이 어렵습니다. 결제와 다운로드는 외부 판매 페이지(래피드)에서 진행됩니다.
다른 종목 예상문제 PDF 보기기준일 2026년 10월 26일 · CertHub가 자체 제작한 예상문제입니다. 시행기관이 공개한 기출문제가 아닙니다.