정보처리기사 CBT
종목 메뉴

개념 한 쪽

정보처리기사 키 종류 — 후보키·대체키·기본키·외래키 정리

관계 데이터베이스의 키는 후보키·대체키·기본키·외래키로 구분된다. 정보처리기사에서는 각 키의 정의와 역할이 옳지 않은 보기로 섞여 나오는 문제가 단골이다.

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

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

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

시험에 이렇게 나온다

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

묻는 꼴문제 수무엇을 묻나
용어 정의 선택1다른 릴레이션 기본키와 값 일치 요구 속성
옳고 그름 판정(외래키)1외래키의 정의·역할 중 틀린 설명 고르기
옳고 그름 판정(후보키)1후보키의 성질·역할 중 틀린 설명 고르기

뜻

후보키(Candidate Key)는 테이블의 각 행(튜플)을 유일하게 구별할 수 있는 속성 또는 속성들의 조합이다. 유일성(중복 없음)과 최소성(불필요한 속성 제거)을 만족해야 하며, 모든 릴레이션은 최소 하나의 후보키를 가져야 한다. 후보키는 튜플을 유일하게 식별하는 용도이지, 테이블 간 참조 무결성 제약조건을 표현하는 도구가 아니다. 참조 무결성을 표현하는 것은 외래키다.

기본키(Primary Key)는 후보키 중에서 대표로 선택된 키로, 개체 무결성에 따라 널(NULL) 값과 중복 값을 가질 수 없다. 대체키(Alternate Key)는 기본키로 선택되지 않은 나머지 후보키를 말한다. '기본키를 제외한 나머지 후보키'를 설명하는 보기가 외래키의 정의로 제시되면 그것이 옳지 않은 것이다.

외래키(Foreign Key)는 다른 릴레이션의 기본키 값과 일치함을 요구하는 한 릴레이션의 속성이다. 예를 들어 주문 테이블에 고객 테이블의 고유 번호인 기본키를 외래키로 넣으면 두 테이블이 연결되어 정보를 공유할 수 있다. 외래키는 두 테이블 간 관계를 설정하고 참조 무결성을 보장하며, 참조하는 테이블(자식)과 참조되는 테이블(부모) 간의 관계를 명확히 한다. 속성 자체를 지칭할 때는 외래키, 그 속성이 지켜야 할 규칙은 참조제약, 데이터가 일관되게 유지되는 상태는 참조무결성으로 구분된다.

예제

'외래키에 대한 설명으로 옳지 않은 것은?' 문제에서는 '기본키를 제외한 나머지 후보키를 의미한다'(대체키의 정의)를 골라낸다. '후보키에 대한 설명으로 옳지 않은 것?'에서는 '참조 무결성 제약조건을 표현한다'(외래키의 역할)가 정답이다. '다른 릴레이션의 기본키 값과 일치함을 요구하는 속성'을 묻는 문제는 외래키로 답한다. '유일 식별은 후보키·기본키, 참조 무결성은 외래키'로 구분하면 보기가 섞여도 흔들리지 않는다.

대표 기출 3문항

어떤 릴레이션 R1의 기본키의 값들과 일치함을 요구하는 다른 릴레이션 R2의 한 속성을 무엇이라 하는가?

  1. 참조제약(referential constraint
  2. 외래키(foreign key)
  3. 기본키(primary key)
  4. 참조무결성(referential integrity)
정답과 해설 보기

정답 ② · 다른 릴레이션의 기본키 값과 일치하도록 요구되는 속성의 명칭을 묻는 문제이다. 외래키(Foreign Key)는 한 릴레이션 R2의 속성으로서 다른 릴레이션 R1의 기본키 값을 참조하여 두 릴레이션 간의 관계를 표현하고 참조 무결성을 유지하게 한다.

다른 테이블의 기본키를 참조하여 무결성을 보장하는 속성을 외래키라 한다.

외래키(Foreign Key)에 대한 설명으로 옳지 않은 것은?

  1. 외래키는 하나의 릴레이션에 존재하는 후보 키들 중에서 기본키를 제외한 나머지 후보키들을 의미한다.
  2. 외래키는 현실 세계에서 존재하는 개체타입들 간의 관계를 표현하는데 중요한 역할을 수행한다.
  3. 관계형 데이터 모델에서 한 릴레이션의 외래키는 참조되는 릴레이션의 기본키와 대응되어 릴레이션간에 참조 관계를 표현하는 중요한 도구이다.
  4. 외래키를 포함하는 릴레이션이 참조하는 릴레이션이 되고, 대응되는 기본키를 포함하는 릴레이션이 참조 릴레이션이 된다.
정답과 해설 보기

정답 ① · 외래키에 대한 설명 중 옳지 않은 것을 고르는 문제이다. 외래키는 한 릴레이션의 속성으로서 다른 릴레이션의 기본키를 참조하여 릴레이션 간의 관계를 표현하는 데 핵심적 역할을 한다.

외래키는 다른 테이블의 기본키를 참조하여 테이블 간 관계를 설정하는 키이다.

후보키에 대한 설명으로 옳지 않은 것은?

  1. 릴레이션의 기본키와 대응되어 릴레이션 간의 참조 무결성 제약조건을 표현하는데 사용되는 중요한 도구이다.
  2. 릴레이션의 후보키는 유일성과 최소성을 모두 만족해야 한다.
  3. 하나의 릴레이션에 속하는 모든 튜플들은 중복된 값을 가질 수 없으므로 모든 릴레이션은 반드시 하나 이상의 후보키를 갖는다.
  4. 릴레이션에서 튜플을 유일하게 구별해 주는 속성 또는 속성들의 조합을 의미한다.
정답과 해설 보기

정답 ① · 후보키는 릴레이션 내의 튜플을 유일하게 식별할 수 있는 속성들의 조합으로, 유일성과 최소성을 만족해야 합니다. 반면 보기 1번에서 설명하는 '기본키와 대응되어 릴레이션 간의 참조 무결성 제약조건을 표현하는 데 사용되는 도구'는 후보키가 아니라 외래키(Foreign Key)에 대한 설명이므로 옳지 않은 설명입니다.

후보키는 튜플 유일 식별용이고, 외래키가 참조 무결성 제약조건을 표현하는 도구이므로 ①이 옳지 않다.

자주 묻는 물음

후보키의 조건은 무엇인가요?
튜플을 유일하게 구별하는 유일성과, 불필요한 속성을 제거한 최소성을 만족해야 합니다. 모든 릴레이션은 최소 하나의 후보키를 가져야 합니다.
대체키와 외래키는 어떻게 다른가요?
대체키는 기본키로 선택되지 않은 나머지 후보키입니다. 외래키는 다른 릴레이션의 기본키를 참조하여 테이블 간 관계를 설정하고 참조 무결성을 보장하는 속성입니다.
외래키의 역할은 무엇인가요?
다른 테이블의 기본키 값을 참조하는 속성으로 두 테이블 간의 연결고리 역할을 하며, 참조하는 테이블(자식)과 참조되는 테이블(부모)의 관계를 명확히 하고 참조 무결성을 보장합니다.
이 개념 문제 10개 풀기 회원용

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