1. 무결성 개념 및 종류

- 데이터베이스에 저장된 데이터 값과 실제값이 일치하는 정확성을 의미한다

 

2. 개체 무결성

- 기본 테이블의 기본키를 구성하는 어떤 속성도 널 값이나 중복값을 가질 수 없다는 규정

 

3. 도메인 무결성

- 주어진 속성 값이 정의된 도메인에 속한 값이어야 한다는 규정

 

4. 참조 무결성

- 외래키값은 널이거나 참조 릴레이션의 기본키 값과 동일해야 한다.

 

5. 사용자 정의 무결성

- 속성 갑들이 사용자가 정의한 제약 조건에 만족해야 한다는 규정

 

6. 데이터 무결성 강화

- 데이터 무결성은 데이터 품질에 직접적인 영향을 미치므로 데이터 특성에 맞는 적절한 무결성을 정의하고 강화해야 한다

- 데이터베이스 구축 과정에서 정의한다

- 애플리케이션, 데이터베이스 트리거, 제약 조건을 이용하여 강화 가능

     - 애플리케이션

          - 데이터 생성, 수정, 삭제 시 무결성 조건을 검증하는 코드를 데이터를 조작하는 프로그램 내에 추가한다

          - 코드를 이용한 복잡한 규칙 등을 검토하는 무결성 검사는 데이터베이스에서 수행하기 어려우므로 애플리케이션에서 처리

          - 장점 : 사용자 정의 같은 복잡한 무결성 조건의 구현 가능

          - 단점 : 소스 코드에 분산되어 있어 관리가 힘들고, 개별적인 시행으로 인해 적정성 검토가 어려움

     - 데이터베이스 트리거

         - 트리거 이벤트에 무결성 조건을 실행하는 절차형 SQL을 추가

         - 장점 : 통합 관리가 가능하고, 복잡한 요구 조건의 구현 가능

         - 단점 : 운영 중 변경이 어렵고, 사용상 주의 필요

     - 제약 조건

         - 장점 : 통합 관리 가능, 간단한 선언으로 구현 가능, 변경 용이, 오류 데이터 발생 방지 등..

         - 단점 : 복잡한 제약 조건의 구현과 예외처리 불가능