티스토리 뷰

데이터 무결성 [ 無缺性, data integrity ]

데이터를 인가되지 않은 방법으로 변경할 수 없도록 보호하는 성질. 데이터 무결성의 보호는 네트워크 관리자만의 서버 접근, 전송 선로 관리, 서지 및 전자적 충격으로부터의 하드웨어 및 저장 장치의 보호 등을 통해 이루어지며, 사용자 인증 수준 유지, 시스템 관리 절차ㆍ유지 보수 지침 문서화, 장애 및 외부 공격에 대비한 복구 대책 수립 등 관리 대책이 필요하다.
쉽게 말하여 데이터무결성은 데이터베이스에 들어 있는 데이터의 정확성을 보장하는 것을 말한며, 데이터의 입력이나 변경등에 제한을 두어서 데이터의 안전성을 저해하는 요소를 막자는 의미이다. DBMS(데이터베이스 관리시스템)의 필수 조건이다.
정확하지 않은 데이터 값이 데이터베이스에 저장된 것을 데이터베이스에서는 데이터 무결성이 위반되었다고 표현한다.

데이터 무결성의 종류

■ 영역무결성=도메인 무결성(Domain Integrity)
: 열(컬럼)에 반영. 입력되는 데이터 유형을 제한. 도메인(또는 열) 무결성은 열에 사용할 수 있는 데이터 값의 집합을 지정하고 null 값을 사용할 수 있는지 여부를 나타낸다. 일반적으로 데이터 무결성은 유효성 검사를 사용하여 강화하며 열에 사용할 수 있는 데이터 형식, 서식 또는 가능한 값의 범위를 제한하여 강화할 수도 있다.

제약이름 : CHECK, RULE, DEFAULT

■ 개체 무결성=엔티티 무결성(Entity Integrity)
: 중복데이터 방지 → unique index, primary key, 행(Row) 구분제약. 엔티티(또는 테이블) 무결성을 사용하려면 테이블의 모든 행에 기본 키 값으로 알려진 고유 식별자가 있어야 한다. 기본 키 값을 변경할 수 있는지 여부 또는 전체 행을 삭제할 수 있는지 여부는 기본 키와 다른 테이블 사이에 필요한 무결성 수준에 의해 좌우된다.

제약이름 : Primary Key, Unique Index

■ 참조 무결성(Referential Integrity)
: 외래키. 참조 무결성을 사용하면 참조된 테이블의 기본 키와 참조하는 테이블의 외래 키 간의 관계를 항상 유지할 수 있다. 외래 키가 테이블의 행을 참조하고 있으면 연계 동작이 허용되지 않는 한, 그 행을 삭제하거나 기본 키를 변경할 수 없다. 같은 테이블 내에서 또는 다른 테이블 간의 참조 무결성 관계를 정의할 수 있다.

제약이름 : Foreign Key

■ 사용자 정의 무결성(User Define Integrity)
: Trigger와 같은 사용자가 특수한 데이터 무결성을 유지하기 의해 생성되는 제약

제약이름 : Trigger, User Define Data Tpye

댓글