정보처리기사 CBT
종목 메뉴

개념 한 쪽

정보처리기사 데이터베이스 무결성 — 개체·도메인·참조 무결성과 보안의 차이

데이터베이스 무결성(Integrity)은 데이터의 정확성과 일관성을 유지하기 위한 규칙이다. 정보처리기사에서는 개체·도메인·참조 무결성의 정의 구분과 무결성·보안의 차이가 단골로 출제된다.

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

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

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

시험에 이렇게 나온다

출제기준 단원 「데이터베이스 무결성」의 공개 문제 3개를 묻는 꼴별로 나누면 이렇습니다.

묻는 꼴문제 수무엇을 묻나
규칙 이름 고르기1다른 릴레이션 참조 관계 유지 규칙 이름
속성 이름 고르기1다른 릴레이션 기본키와 일치해야 하는 속성
개념 차이 판단1무결성과 보안의 차이(권한 있는/없는 보호)

뜻

무결성과 보안은 서로 다른 개념이다. 무결성은 권한이 있는 사용자라도 잘못된 데이터를 입력하지 못하도록 방지하는 '내부적 오류 방지'이고, 보안(Security)은 권한이 없는 외부자나 불법적인 사용자가 데이터베이스에 접근하거나 데이터를 변조하지 못하도록 보호하는 '외부적 침입 방지'다. '무결성=권한 있는 사용자로부터의 오류 방지, 보안=권한 없는 사용자로부터의 보호'로 대비된다.

무결성 규칙은 크게 세 가지로 나뉜다. 개체 무결성(Entity Integrity)은 기본키를 구성하는 어떠한 속성 값도 널(NULL) 값이나 중복 값을 가질 수 없다는 조건이다. 기본키는 각 행(튜플)을 고유하게 식별하는 열이므로, 널이면 식별할 수 없고 중복이면 두 행을 구별할 수 없기 때문이다. 도메인 무결성은 각 열(속성)의 값이 그 속성이 정의된 데이터 타입이나 허용 범위(도메인)에 맞아야 한다는 규칙이다. 여기서 규정하는 것은 '열(속성)의 값'이지 튜플 전체의 값이 아니므로, '주어진 튜플의 값이 도메인에 속해야 한다'는 표현은 부정확한 설명으로 나온다.

참조 무결성(Referential Integrity)은 한 릴레이션에 저장된 튜플이 다른 릴레이션의 튜플을 참조하려면 참조되는 튜플이 반드시 그 릴레이션에 존재해야 한다는 규칙이다. 외래키가 참조하는 기본키의 값이 실제로 존재해야 하며, 외래키를 변경하면 이를 참조하고 있는 기본키도 함께 변경해야 참조 관계가 유지된다. 무결성 규정에는 이름, 검사 시기, 제약 조건 등이 명시되며, 트리거(Trigger)는 특정 조건이 만족될 때 실행될 동작을 정의하는 객체로 무결성 규칙과는 구분된다.

예제

'기본키를 구성하는 속성 값도 널이나 중복을 가질 수 없다'는 문장이 나오면 개체 무결성을 답한다. '참조되는 튜플이 반드시 존재해야 한다', '외래키와 기본키의 관계'라는 키워드는 참조 무결성으로 연결된다. 무결성과 보안의 차이를 묻는 문제에서는 '권한 있는 사용자로부터의 오류 방지=무결성', '권한 없는 사용자로부터의 접근 차단=보안'이라는 보기를 찾으면 된다. 도메인 무결성 문제는 '튜플의 값'이라는 표현을 섞어 놓고 옳지 않은 것을 고르게 하는 꼴로 나온다.

대표 기출 3문항

릴레이션 R1에 저장된 튜플이 릴레이션 R2에 있는 튜플을 참조하려면 참조되는 튜플이 반드시 R2에 존재해야 한다는 데이터 무결성 규칙은?

  1. 개체 무결성 규칙(Entity Integrity Rule)
  2. 참조 무결성 규칙(Referential Integrity Rule)
  3. 영역 무결성 규칙(Domain Integrity Rule)
  4. 트리거 규칙(Trigger Rule)
정답과 해설 보기

정답 ② · 외래키로 다른 릴레이션의 튜플을 참조할 때 참조 대상이 반드시 존재해야 하는 무결성 규칙을 묻는 문제이다. 참조 무결성 규칙은 릴레이션 R1의 외래키가 R2의 튜플을 참조할 경우 그 튜플이 R2에 반드시 존재해야 함을 보장하는 규칙이다.

참조 무결성은 외래키가 참조하는 기본키의 값을 반드시 가져야 하며, 참조 대상이 존재해야 한다.

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

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

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

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

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

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

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

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

자주 묻는 물음

무결성과 보안의 차이는 무엇인가요?
무결성은 권한 있는 사용자로부터의 부정확한 데이터 입력을 방지하는 것이고(내부적 오류 방지), 보안은 권한 없는 사용자의 접근과 변조로부터 데이터베이스를 보호하는 것입니다(외부적 침입 방지).
개체 무결성이란 무엇인가요?
한 릴레이션의 기본키를 구성하는 어떠한 속성 값도 널(NULL) 값이나 중복 값을 가질 수 없다는 제약 조건입니다. 기본키의 널 금지와 중복 금지를 함께 기억하면 됩니다.
참조 무결성이란 무엇인가요?
한 릴레이션의 튜플이 다른 릴레이션의 튜플을 참조하려면 참조되는 튜플이 반드시 존재해야 한다는 규칙입니다. 외래키가 참조하는 기본키 값이 실제로 존재해야 하고, 외래키 변경 시 참조 관계가 유지되어야 합니다.
이 개념 문제 10개 풀기 회원용

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