무결성 제약 조건(integrity constraint)
무결성: 데이터의 정확성, 일관성, 유효성을 유지하는 것
현실 세계의 값과 일치하다는 신뢰 생성
장점: 스키마 정의 시, 일관성 조건을 한번만 명시해도 DBMS가 자동적으로 검사함.
사용자들은 일관성 조건을 검사하지 않아도 됨.
종류
1) 도메인 제약조건(Domain constraint)
▷ 속성 값은 반드시 원자값이어야 한다.
▷ 속성 값의 가능한 값들의 범위와 디폴트 값을 지정할 수 있다.
- data type 사용 : 값들의 유형 제한
- CHECK 제약조건 사용 : 값들의 범위 제한
- NOT NULL 제약조건 사용 : 모든 튜플에서 해당 속성의 값이 반드시 존재하도록 제한
2) 키 제약조건(key constraint)
▷ 키 속성에 중복된 값이 존재해서는 안된다.
- 릴레이션 정의 시, 기본 키로 정의 : 중복 값 불허
- UNIQUE를 명시한 속성 : 중복 값 불허
3) 엔티티 무결성 제약조건(entity integrity constraint)
▷ 릴레이션에서 기본 키를 구성하는 속성은 NULL값을 가질 수 없다.
(NULL은 식별성을 잃게함)
- 기본 키에서 유래
- 릴레이션 키 참고
4) 참조 무결성 제약조건(referential integrity constraint)
▷ 릴레이션은 참조할 수 없는 외래 키 값을 가져서는 안 된다.
▷ 서로 참조 관계에 있는 두 테이블의 데이터는 항상 일관된 값을 유지해야 한다.
▷ 두 릴레이션의 연관된 튜플들 사이의 일관성을 유지하는데 사용됨
- 참조할 수 없는 외래 키 값: NULL이 아니면서 참조된 릴레이션의 어떤 기본 키 값과도 일치하지 않는 값
ex) 수강 릴레이션의 학생 번호 속성에는 학생 릴레이션의 번호 속성에 있는 값만 입력 가능
3) 고유 무결성
▷ 특정 속성에 대해 고유한 값을 가지도록 조건이 주어진 경우 그 속성 값은 모두 고유 값
'일기' 카테고리의 다른 글
[관계 데이터 모델] 제약 조건_트랜잭션 (0) | 2023.02.11 |
---|---|
[관계 데이터 모델] 제약 조건_릴레이션 키 (0) | 2023.02.10 |
[관계 데이터 모델] 구조 (0) | 2023.02.10 |
[ER모델] ERD (0) | 2023.02.10 |
[ER모델] 기본_엔티티 예시 (3) | 2023.02.10 |