현재 선택한 정보처리 과정

정보처리기사 실기 이론 학습

이론 목록으로 돌아가기

DB 설계·ER·관계대수

업무 개념을 관계 구조로 옮기고 관계대수의 집합 의미를 적용한다.

예상 읽기 3

실기 학습 목표

업무 개념을 관계 구조로 옮기고 관계대수의 집합 의미를 적용한다.

핵심 이론

개념적 설계는 DBMS와 독립적인 ER 모델, 논리적 설계는 관계 스키마·키·정규화, 물리적 설계는 파일·인덱스·저장 배치를 정한다.

ER의 다중도는 어느 방향의 개체 수를 묻는지 확인한다. 다대다 관계는 두 식별자를 포함하는 연결 릴레이션으로 풀고 같은 조합의 중복 허용 여부에 따라 키를 정한다.

선택 σ는 조건에 맞는 행, 투영 π는 필요한 열을 남긴다. 관계대수의 투영은 중복을 제거한다. 카티션 곱 ×는 모든 행 조합이며 조인은 그중 조건에 맞는 조합이다.

디비전 ÷는 오른쪽 집합의 모든 값에 대응하는 왼쪽 값을 찾는다. 합집합·교집합·차집합은 집합의 중복 없는 의미를 적용한다.

개념 도식

좌우로 이동해 그림을 확인하세요.그림 크게 보기
DB 설계·ER·관계대수의 관계와 흐름을 보여 주는 도식
DB 설계·ER·관계대수의 관계와 흐름을 보여 주는 도식

설계 단계는 산출물이 얼마나 구체적인지로 판단한다

개념 설계는 특정 DBMS보다 업무 개체·속성·관계를 표현한다. 논리 설계는 이를 관계형 테이블·키 등 논리 구조로 바꾸고, 물리 설계는 선택한 DBMS의 저장·인덱스·배치에 구체화한다. ER 그림이라는 이유만으로 모든 단계의 산출물이라고 답하지 말고 지문이 담은 정보를 본다.

관계대수의 선택 σ는 행 조건, 투영 π는 필요한 열이다. 집합 의미의 투영에서는 같은 결과 튜플이 중복 제거된다. π_dept(σ_score≥70(R))는 먼저 점수 70 이상 행을 고르고 그 뒤 dept만 추린다. 기호를 바깥쪽부터 읽어 곧바로 열을 지우면 조건에 필요한 score를 잃을 수 있다.

디비전은 ‘요구된 모든 값과 연결된 대상’을 찾는다. 필수 자격이 X·Y라면 사람별 보유 자격을 모아 X와 Y를 둘 다 가진 사람을 남긴다. 자격이 하나라도 일치하면 남기는 조인과 다르다. 그 밖의 Z까지 가진 사람도 필수 자격을 모두 가졌다면 제외하지 않는다.

다대다 관계는 연결 릴레이션으로 표현하며 양쪽 키의 조합을 기본키 후보로 검토한다. 같은 조합을 여러 번 기록할 수 있는 업무라면 추가 식별자가 필요할 수 있으므로 지문의 중복 허용 조건을 우선한다.

풀이 예시

아래 관계에서 관계대수 Owned ÷ Required의 결과에 남는 사람을 모두 쓰시오. 관계대수의 집합 의미를 적용한다.

[Owned]

personcert
X
Y
Z
X
Y
Y
Z

[Required]

cert
X
Z

예시 정답

CODE코드 영역 안에서 좌우로 이동할 수 있습니다.

풀이 과정

디비전은 Required의 모든 cert에 대해 대응 행을 가진 person을 남긴다. 가만 X와 Z를 모두 보유한다. 나에게 Z가 없고 다에게 X가 없다.

답안 점검

위 풀이 예시의 답을 가린 뒤, 핵심 이론의 규칙을 적용해 직접 풀어 보세요. 코드와 계산 문제는 중간값·단위·최종 출력의 순서를, 용어 문제는 지문의 핵심 단서와 답의 의미를 점검하세요. 해설과 다른 부분이 있으면 어느 조건을 놓쳤는지 확인하고 연결된 실기 문제로 다시 연습하세요.