CS/데이터베이스

[데이터 베이스] 제약조건 정리

happy_life 2022. 10. 5. 10:19

데이터베이스에는 무결성을 위한 제약조건이 있는데, 개체 무결성, 참조 무결성, 도메인 무결성이 있습니다. 

 

개체 무결성 제약 조건

기본 키를 구성하는 속성은 NULL값을 가질 수 없다는 것입니다. 예를 들어 ID가 기본키로 정의되어 있으면 튜플을 추가할 때 ID가 NULL이거나, 중복된 값을 가지면 안된다는 것입니다. 

 

 

 

참조 무결성 제약 조건

외래 키 값이 NULL이거나 참조 릴레이션의 기본키 값과 동일해야 한다는 것입니다.  또한 도메인도 같아야 합니다.

릴레이션은 참조할 수 없는 외래 키 값을 가질 수 없습니다.  아래의 예시에서

Insert <‘677678989’, 7, ‘40.0’> into WORKS_ON. 로 튜플을 삽입할 수 있을까요? 아닙니다. 왜냐하면 Works_on의 Pno가 참조하는 Project의 Pnumber에 7이 없기 때문입니다.

참조 무결성

 

 

 

도메인 무결성 제약 조건

특정 속성의 값이 정의된 도메인에 해당하는 값이어야한다는 제약 조건입니다.

예를 들어 "문자"만 입력 가능한데, 숫자를 입력하려고 한다면 도메인 무결성 제약 조건에 의해 튜플을 입력할 수 없게 됩니다.