DB | 5. 관계 데이터 모델 (part 2)

ja_efan·2024년 1월 26일
0

DB

목록 보기
8/8
post-thumbnail

02 관계 데이터 모델의 제약

기본적으로 관계 데이터 모델에서 정의하고 있는 기본 제약 사항은 '키'와 관련된 무결성 제약조건(integrity constraint)이다.

데이터에서 말하는 무결성은 데이터에 결함이 없는 상태, 즉 데이터가 정확하고 유효하게 유지된 상태를 말한다.

이러한 의미에서 무결성 제약조건의 주요 목적은 데이터베이스에 저장된 데이터의 무결성을 보장하고, 데이터베이스의 상태를 일관되게 유지하는데에 있다.

관계 데이터 모델이 포함하고 있는 무결성 제약조건에는 개체 무결성 제약조건참조 무결성 제약조건이 있다.

1. 개체 무결성 제약조건 (entity integrity constraint)

개체 무결성 제약조건은 기본키를 구성하는 모든 속성은 널 값을 가지면 안 된다는 규칙이다.
관계 데이터 모델에서 릴레이션에 포함되어 있는 튜플들을 유일하게 구별하도록 릴레이션마다 기본키를 정의한다. 그런 기본키를 구성하는 속성들의 집합 전체 혹은 일부가 널 값을 수용하면 튜플의 유일성을 보장할 수 없어 기본키의 목적을 상실하게 된다.

이런 개체 무결성 제약조건을 만족시키려면 새로운 튜플이 삽입되는 연산과 기존 튜플의 기본키 속성 값이 변경되는 연산이 발생할 때 기본키에 널 값이 포함되는 상황에서의 연산의 수행을 거부하면 된다. 이러한 로직은 릴레이션을 생성할 때 기본키를 어떤 속성들로 구성할 것인지 결정하면서 함께 정해지게 된다.

2. 참조 무결성 제약조건 (referential integrity constraint)

참조 무결성 제약조건이란 외래키는 참조할 수 없는 값을 가질 수 없다는 규칙이다.
일반적으로 외래키는 다른 릴레이션의 기본키를 참조하며, 릴레이션 간의 관계를 표현한다.
이러한 외래키가 자신이 참조하는 릴레이션의 기본키와 상관없는 값을 가지게 되면 두 릴레이션의 관계는 무용지물이 된다. 따라서 외래키는 자신이 참조하는 릴레이션의 기본키 값으로 존재하는 값, 즉 참조 가능한 값만 가져야 한다.

profile
이것저것.

0개의 댓글