데이터베이스 무결성

paduck·2023년 3월 18일
0

CS/데이터베이스

목록 보기
2/3

데이터베이스의 무결성(Integrity)란?

데이터베이스 내부의 데이터가 정확하고 일관성이 있어야 하는 것을 의미
즉, 데이터베이스에 저장된 데이터가 올바르게 유지되고, 데이터 간의 관계가 정확하게 유지되어야 한다는 것!
데이터베이스의 무결성은 데이터베이스 내부의 데이터가 신뢰할 수 있는지를 보장하며, 데이터의 정확성과 안정성을 보장한다.

데이터베이스 무결성이 필요한 이유

1) 데이터의 정확성 유지
데이터베이스 내부의 데이터는 정확하게 유지되어야 한다.
그렇지 않으면, 잘못된 정보를 처리하거나 중복된 데이터를 저장하는 등의 문제가 발생할 수 있다.

2) 데이터 간의 일관성 유지
데이터 간의 관계가 일관성을 유지해야 한다.
예를 들어, 설계를 하다보면 간과하기 쉬운 문제 중 하나가 부모-자식 관계 데이터다.
자식은 부모에 종속되어 있기 때문에 부모 데이터를 삭제할 때 자식 데이터도 함께 삭제되어야한다.
이러한 일관성을 유지하지 않으면 데이터 간의 관계가 꼬여 데이터베이스의 무결성이 깨지게 된다.

3) 데이터의 보안 유지
데이터의 보안을 유지가 가능한데, 그렇지 않으면 악의적인 사용자가 데이터를 수정하거나 삭제하는 등의 공격이 가능하다

4) 데이터의 가치 유지
일관성이 정확하게 유지될수록 데이터의 가치가 높아진다.
데이터의 가치가 높아지면 데이터베이스를 활용하는 비즈니스나 조직에 큰 도움이 된다.

이처럼 데이터베이스의 무결성은 데이터베이스 내부의 데이터를 신뢰할 수 있게 만들어주는 매우 중요한 개념으로 설계 시 많은 신경을 기울여야 한다.

데이터베이스 무결성 제약 조건

1) 개체 무결성 (Entity Integrity)

  • 기본 키가 Null 값을 가질 수 없고, 각 레코드마다 유일한 기본 키가 있어야 함
  • 각 레코드가 고유하게 식별되도록 하며, 데이터 중복성을 방지

2) 참조 무결성 (Referential Integrity)

  • 두 개의 테이블 사이의 관계를 유지하기 위한 규칙으로, 제약 조건을 사용하여 자식 테이블의 각 레코드가 부모 테이블의 기본 키와 일치하는지 확인
  • 이를 통해 데이터 일관성을 유지

3) 도메인 무결성 (Domain Integrity)

  • 각 열이 지정된 데이터 형식에 맞게 유지되는 규칙
  • 예를 들어, 문자열 형식의 데이터 열에는 숫자 값이 저장될 수 없으며, 날짜 데이터 형식의 열에는 잘못된 날짜 값이 저장될 수 없음

4) NULL 값 무결성

  • NULL 값을 가지는 데이터에 대한 무결성
  • 한 컬럼에 NULL 값이 존재하면 해당 컬럼을 기준으로 한 데이터의 비교나 연산이 불가능

5) 범위 무결성

  • 데이터베이스 필드에 저장되는 값이 정해진 범위 내에 있는지 확인
  • 나이 필드는 0세 이상 150세 이하의 값 을 가진다는 등
profile
끈질기게 들러붙기

0개의 댓글