데이터 무결성(Data Integrity)

Lys·2023년 11월 21일
0

데이터베이스

목록 보기
4/18

데이터 무결성

데이터 무결성이란 데이터의 정확성,일관성,유효성이 유지 되는 것을 의미한다. 만약 데이터베이스에서 데이터 무결성 설계를 하지 않는다면 테이블에 중복된 데이터 존재, 부모 자식 데이터간의 논리적 관계 깨짐, 잦은 에러와 재개발 비용 발생 등과 같은 문제가 발생한다.

  • 정확성 : 중복이나 누락이 없는 상태
  • 일관성 : 원인과 결과의 의미가 연속적으로 보장되어 변하지 않는 상태
  • 유효성 : 사용자로부터 값을 입력 받을 때 정확한 값만 입력되도록 하는 기능

데이터 무결성 제약 조건

데이터베이스 상태가 만족시켜야 하는 조건이자, 사용자에 의한 데이터베이스 갱신이 데이터베이스의 일관성을 깨지 않도록 보장하는 것이다. 스키마를 정의할 때 일관 된 데이터베이스 상태를 정의하는 규칙들을 한 번만 명시하면 되고, 데이터베이스가 갱신 될 때 DBMS가 자동적으로 이러한 일관성 조건을 검사해 주기 때문에 프로그램단에서 신경써주지 않아도 된다는 장점이 있다.

데이터 무결성 목적

일관된 데이터베이스 상태를 명시적으로 정의하여 권한을 가진 사용자들로부터 정확성을 지키는 것을 목적으로 한다.

데이터 무결성 제약조건 종류

  • 개체 무결성(Entity Integrity)
    • 테이블은 기본키를 지정하고, 그에 따른 무결성 원칙을 지켜야 한다.
    • 기본 키 제약이고도 한다.
    • NULL을 허용하지 않는다.
    • 기본키는 유일성을 보장하는 최소한의 집합이다.
    • EX ) Primary Key(기본 키), NOT NULL
  • 참조 무결성(Referential Integrity)
    • 테이블 간의 참조 관계를 선언하는 제약 조건이다.
    • 외래키 제약이라고도 한다.
    • 외래키의 값은 NULL이거나 참조 릴레이션의 기본키 값과 동일해야 된다.
    • 외래 키의 속성은 참조할 수 없는 값을 가질 수 없다.
    • EX) Foreign Key(외래 키)
  • 속성 무결성(Attribute Integrity)
    • 컬럼은 지정 된 데이터 형식을 반드시 만족하는 값만 포함해야 된다.
      (정의 된 값만 입력)
    • EX) Character, Date,LONGG,NUMBER
  • 키 무결성(Key Integrity)
    • 하나의 테이블에 반드시 하나의 키는 존재하여야 한다.
    • 같은 키 값을 가진 튜플이 존재하면 안 된다.
  • 사용자 정의 무결성
    • 모든 데이터는 업무 규칙을 준수해야 된다.
  • 도메인 무결성(Domain Integrity)
    • 테이블에 존재하는 필드의 무결성을 보장하기 위한 것이다.
    • 필드의 타입,NULL 값 허용 등에 대한 사항의 정의하고 올바른 데이터가 입력 되었는지 확인한다.
    • EX) CHECK,Default
  • NULL 무결성
    • 특정 속성은 NULL 값을 가질 수 없다.
    • EX) User ID

🙇‍ 참고 사이트 🙇‍

https://cocoon1787.tistory.com/778
https://libertegrace.tistory.com/entry/Database-%EB%AC%B4%EA%B2%B0%EC%84%B1-%EC%A0%9C%EC%95%BD%EC%A1%B0%EA%B1%B4
https://azurecourse.tistory.com/556

0개의 댓글

관련 채용 정보