정보처리기사 CBT
종목 메뉴

개념 한 쪽

정보처리기사 반정규화 — 데이터베이스 무결성과 키 제약

데이터베이스에서는 데이터의 정확성과 일관성을 지키는 규칙과 각 행을 고유하게 식별하는 키의 역할을 구분해야 한다. 이 카드는 재료 문항에 나온 개체 무결성, 참조 무결성, 후보 키, 무결성과 보안의 차이를 정리한다.

2026-11-08 기준 · 정보처리기사 대시보드

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

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

시험에 이렇게 나온다

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

묻는 꼴문제 수무엇을 묻나
기본 키 제약 판단1기본 키 속성 값의 NULL 금지와 중복 금지를 가린다
무결성과 보안 구분1권한 있는 사용자와 권한 없는 사용자의 보호 대상을 가린다
키와 무결성 연결1기본 키와 무결성 규칙의 대응을 가린다

뜻

개체 무결성은 한 릴레이션의 기본 키를 구성하는 속성 값이 NULL 값이나 중복 값을 가질 수 없다는 제약 조건이다. 기본 키는 각 튜플을 고유하게 식별하는 역할을 하므로 NULL 값이나 중복 값이 허용되면 행의 식별이 불가능해진다. 그래서 기본 키의 NULL 금지와 중복 금지를 개체 무결성과 연결해 구분한다.

참조 무결성은 한 릴레이션의 튜플이 다른 릴레이션의 튜플을 가리키는 경우 그 대상이 반드시 실재해야 한다는 규칙이다. 외래 키가 참조하는 기본 키 값이 실제로 존재해야 한다는 점이 핵심이다. 개체 무결성은 기본 키의 고유성과 관련되고, 참조 무결성은 외래 키의 참조 유효성과 관련된다.

후보 키는 각 행을 다른 행과 헷갈리지 않게 가려내는 속성 또는 속성들의 조합이다. 기본 키는 후보 키 가운데 선택된 키로 설명되고, 대체 키는 후보 키 중에서 기본 키로 선택되지 않은 키로 구분된다. 외래 키는 다른 릴레이션과의 참조 관계를 맺는 키로 구분한다.

무결성과 보안은 보호 대상이 다르다. 무결성은 권한 있는 사용자로부터 데이터의 정확성과 일관성을 지키는 개념이고, 보안은 권한 없는 사용자로부터 데이터베이스 접근을 보호하는 개념이다. 따라서 무결성은 내부적 오류 방지, 보안은 외부적 접근 차단으로 구분한다.

키 제약 조건은 기본 키 자체의 존재를 다루고, 개체 무결성은 기본 키 속성 값의 NULL 금지와 중복 금지를 다룬다. 참조 무결성은 외래 키가 참조하는 값의 존재를 보장하는 규칙으로 구분한다. 이처럼 무결성의 종류와 키의 종류를 적용 대상에 따라 나누어 정리한다.

예제

개체 무결성과 참조 무결성을 뒤바꾸어 설명하면 틀린다. 기본 키의 NULL 금지와 중복 금지는 개체 무결성이고, 외래 키가 참조하는 튜플의 존재를 보장하는 규칙은 참조 무결성이다. 후보 키를 기본 키로 선택되지 않은 키라고 바꾸는 선지도 함정이다. 기본 키로 선택되지 않은 후보 키가 대체 키이고, 대체 키도 행을 고유하게 가려낸다. 무결성과 보안의 보호 대상을 권한 있는 사용자와 권한 없는 사용자로 구분하지 않으면 설명이 어긋난다.

대표 기출 3문항

한 릴레이션의 기본키를 구성하는 어떠한 속성 값도 널(NULL)값이나 중복 값을 가질 수 없다는 것을 의미하는 것은?

  1. 개체 무결성 제약 조건
  2. 참조 무결성 제약 조건
  3. 보안 무결성 제약 조건
  4. 정보 무결성 제약 조건
정답과 해설 보기

정답 ① · 기본키가 널 값과 중복 값을 가질 수 없다는 무결성 제약 조건을 묻는 문제이다. 개체 무결성 제약 조건은 릴레이션의 기본키를 구성하는 속성 값이 널이나 중복 값을 가질 수 없다고 규정하며, 이를 통해 각 튜플이 고유하게 식별됨을 보장한다.

기본키의 NULL 금지와 중복 금지 제약은 개체 무결성(entity integrity) 제약 조건입니다.

데이터베이스 무결성과 보안의 차이점에 대한 설명 중 옳은 것은?

  1. 무결성은 권한이 있는 사용자로부터 데이터베이스를 보호하는 것이고, 보안은 권한이 없는 사용자로부터 데이터베이스를 보호하는 것이다.
  2. 무결성은 권한이 없는 사용자로부터 데이터베이스를 보호하는 것이고, 보안은 권한이 있는 사용자로부터 데이터베이스를 보호하는 것이다.
  3. 무결성과 보안은 모두 권한이 있는 사용자로부터 데이터베이스를 보호하는 것이지만, 보안은 사용자 계정과 비밀번호를 관리한다.
  4. 무결성과 보안은 모두 권한이 없는 사용자로부터 데이터베이스를 보호하는 것이지만, 무결성은 DBMS가 자동적으로 보장해 준다.
정답과 해설 보기

정답 ① · 문제는 무결성(integrity)과 보안(security)의 차이를 묻고 있다. 무결성은 권한 있는 사용자의 실수나 잘못된 입력으로부터 데이터의 정확성과 일관성을 보호하는 것을 의미하고, 보안은 권한이 없는 사용자의 불법적 접근으로부터 데이터베이스를 보호하는 것을 의미한다.

무결성은 권한 있는 사용자로부터의 오류 방지, 보안은 권한 없는 사용자로부터의 보호이므로 ①이 옳다.

관계 데이터베이스 제약조건 중 한 릴레이션의 기본 키를 구성하는 어떠한 속성 값도 널(NULL) 값이나 중복 값을 가질 수 없다는 조건은 무엇인가?

  1. 키 제약 조건
  2. 참조 무결성 제약 조건
  3. 참여 제약 조건
  4. 개체 무결성 제약 조건
정답과 해설 보기

정답 ④ · 기본 키를 구성하는 속성 값이 널이나 중복을 가질 수 없다는 무결성 제약의 명칭을 묻는 문제이다. 개체 무결성 제약 조건은 기본 키 속성 값으로 널 값을 가질 수 없고 튜플 간 중복도 허용하지 않아 릴레이션의 각 행을 고유하게 식별하도록 보장한다.

기본 키의 NULL 금지 및 중복 값 방지는 개체 무결성(Entity Integrity) 제약 조건의 핵심 정의이다.

자주 묻는 물음

개체 무결성의 핵심 규칙은 무엇인지 묻는다
기본 키를 구성하는 속성 값은 NULL 값이나 중복 값을 가질 수 없다고 정리한다.
참조 무결성은 어떤 상황을 보장하는지 묻는다
한 릴레이션의 튜플이 다른 릴레이션의 튜플을 가리키는 경우 그 대상이 반드시 실재해야 한다고 정리한다.
후보 키와 대체 키의 차이는 무엇인지 묻는다
후보 키는 각 행을 다른 행과 헷갈리지 않게 가려내는 속성 또는 속성들의 조합이고, 대체 키는 후보 키 중에서 기본 키로 선택되지 않은 키라고 정리한다.
이 개념 문제 10개 풀기 회원용

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