데이터베이스에 저장된 값들에 대하여 여러가지 제한을 통해 데이터의 신뢰를 보장하게 하여 일관성을 유지
영역 무결성(Domain Integrity)
참조 무결성(Referential Integrity)
기본 키(PK)와 참조 키(FK) 간의 관계가 항상 유지 됨을 보장함으로써 레코드 간의 관계를 유효하게 함
특징
조건
제약 조건
외래키의 제약 조건에 의해 참조되는 기본키의 릴레이션에서 데이터의 수정이나 삭제가 발생하면, 참조하는 외래키의 릴레이션이 영향을 받게된다. (전파 특성)
동작
종류
CASCADE: 참조되는 릴레이션(PK)에서 데이터를 수정하거나 삭제하면, 참조하는 릴레이션(FK)에서도 수정과 삭제가 같이 발생
SET NULL: 참조되는 릴레이션(PK)에서 데이터를 수정하거나 삭제하면, 참조되는 릴레이션(FK)의 데이터는 NULL로 변경
NO ACTION: 참조되는 릴레이션(PK)에서 데이터를 수정하거나 삭제해도, 참조되는 릴레이션(FK)의 데이터는 변경되지 않는다.
⇒ 각 릴레이션이 서로 영향을 받지 않는 독립적인 릴레이션에만 사용해야 함
SET DEFAULT: 참조되는 릴레이션(PK)에서 데이터를 수정하거나 삭제하면, 참조하는 릴레이션(FK)의 데이터는 필드의 기본 값으로 설정
RESTRICT: 참조하는 릴레이션(FK)에 데이터가 남아 있으면, 참조되는 릴레이션(PK)의 데이터를 삭제하거나 수정할 수 없음.
강화 규칙
PK값을 변경하고 싶을 땐 어떻게?
⇒ CASCADE 사용 !
DB의 값을 수정/삭제 할 때, 참조하고 있는 레코드도 수정/삭제
개체 무결성(Entity Integrity)