[CS / DataBase] 데이터베이스 무결성

2022. 6. 26. 11:08·Computer Science

데이터 무결성

  • 데이터의 정확성, 일관성, 유효성이 유지되는 것
    • 정확성 : 중복이나 누락이 없는 상태
    • 일관성 : 원인과 결과의 의미가 연속적으로 보장되어 변하지 않는 상태

 

데이터 무결성 제약조건

  • 개체 무결성(Entity Integrity)
    • 모든 테이블이 기본 키(Primary Key)로 선택된 필드(Column)를 가져야 한다.
    • 기본 키는 테이블 내에서 오직 하나의 값만 존재해야함
    • 기본 키에는 NULL값이 올 수 없음
  • 참조 무결성(Referential Integrity)
    • 관계형 데이터베이스 모델에서 참조 무결성은 참조 관계에 있는 두 테이블의 데이터가 항상 일관된 값을 갖도록 유지되는 것 => 외래 키 제약이라고도 함
    • 외래 키(Foreign Key)의 값은 NULL이거나 참조 릴레이션의 기본키 값과 동일해야 함
    • 외래 키 속성은 참조할 수 없는 값을 지닐 수 없음
  • 도메인 무결성(Domain Integrity)
    • 테이블에 존재하는 필드의 무결성을 보장하기 위한 것
    • 필드의 타입, NULL 값 허용 등에 대한 사항 정의
    • 올바른 데이터가 입력되었는지 확인하는 조건
  • NULL무결성(NULL Integrity)
    • 테이블의 특정 속성 값이 NULL이 될 수 없게 하는 조건
  • 고유 무결성(Unique Integrity)
    • 테이블의 특정 속성에 대해 각 레코드들이 갖는 값들이 서로 달라야 하는 조건
  • 키 무결성(Key Integrity)
    • 하나의 테이블에는 적어도 하나의 키가 존재해야 하는 조건
  • 관계 무결성(Relationship Integrity)
    • 테이블의 어느 한 레코드의 삽입 기능 여부 또는 한 테이블과 다른 테이블의 레코드들 사이의 관계에 대한 적절성 여부를 지정한 조건

 

무결성 제약조건 장단점

  • 장점
    • 스키마를 정의할 때 일관성 조건을 오직 한 번만 명시
    • 데이터베이스가 갱신될 때 DBMS가 자동적으로 일관성 조건 감시 => 응용 프로그램들은 일관성 조건을 검사할 필요 없음
  • 단점
    • 프로그래밍 작업 복잡성 증가
    • 무결성 제약조건을 반복해서 구현
    • 무결선 제약조건들 간에 충돌 발생 가능성 존재

 

 

 

 


참조

 

[Database] 데이터 무결성(Data Integrity)이란?

⭐️ 데이터 무결성 데이터 무결성은 데이터의 정확성, 일관성, 유효성이 유지되는 것을 의미합니다. 여기서 정확성이란 중복이나 누락이 없는 상태를 뜻하고, 일관성은 원인과 결과의 의미가

cocoon1787.tistory.com

 

[관계형 데이터베이스] - 무결성 (Integrity)

1. 데이터의 무결성 데이터의 무결성은 데이터의 정확성, 일관성, 유효성이 유지되는 것을 말한다. 데이터의 무결성을 유지하는 것은 데이터베이스 관리시스템 (DBMS)의 중요한 기능이며, 주로 

untitledtblog.tistory.com

 

'Computer Science' 카테고리의 다른 글
  • [CS / DataBase] 트랜잭션(Transaction)
  • [CS / DataBase] 데이터베이스 인덱스(Index)
  • [CS / DataBase] ER 다이어그램
  • [CS / DataBase] 정규화와 비정규화
마볼링
마볼링
개발과 게임에 관한 내용을 읽기 쉽게 정리합니다.
  • 마볼링
    게임을 좋아하는 개발자의 블로그
    마볼링
  • 전체
    오늘
    어제
    • 분류 전체보기
      • Project
        • LOATODO
        • 인스타그램 클론코딩(중단)
      • Language
        • Java
        • PHP
        • Javascript
      • Framework & Library
        • Spring
        • Vue
      • Computer Science
        • Web
        • Linux
      • CodingTest
        • Algorithm
        • Kotlin으로 푼 코딩 테스트
        • Java로 푼 코딩 테스트
        • Sorting & Thinking
        • BFS
      • 책&강의 정리
      • 정보처리기사
      • 개인
        • 팰월드(PALWORLD)
        • 마인크래프트
  • 블로그 메뉴

    • 링크

      • GitHub
      • Threads
    • 공지사항

    • 인기 글

    • 태그

      LoaTodo
      아크 서바이벌
      Spring
      jsp
      오블완
      JPA
      이터널 모드
      Database
      codingtest
      springboot
      error
      코딩테스트
      로아투두
      php
      티스토리챌린지
      네트워크
      CS
      운영체제
      프로그래머스
      java
    • 최근 댓글

    • 최근 글

    • hELLO· Designed By정상우.v4.10.1
    마볼링
    [CS / DataBase] 데이터베이스 무결성
    상단으로

    티스토리툴바