CS 전공/DB

[데이터베이스] 5. 관계 데이터 모델

Easyho.log 2024. 4. 23. 16:03

1. 관계 데이터 모델의 개념

1. 관계 데이터 모델의 기본 개념

- 개념적 구조를 논리적 구조로 표현하는 논리적 데이터 모델이다.

- 하나의 개체에 관한 데이터를 하나의 릴레이션에 저장한다.

2. 관계 데이터 모델의 기본 용어

1) 릴레이션 : 하나의 개체에 관한 데이터를 2차원 테이블의 구조로 저장한 것이다. 

2) 속성 : 릴레이션의 열에 해당하는 부분으로 파일 관리 시스템 관점에서 필드에 대응한다.

3) 튜플 : 릴레이션의 행에 해당하는 부분으로 파일 관리 시스템 관점에서 레코드에 대응한다.

4) 도메인 : 하나의 속성이 가질 수 있는 모든 값의 집합이다.

5) 널 : 속성 값을 모르거나 해당되는 값이 없다는 표현이다.

6) 차수 : 속성의 개수

7) 카디널리티 : 튜플의 개수

3. 릴레이션의 구성

1) 릴레이션 스키마 : 릴레이션의 논리적 구조이다. 릴레이션의 이름과 모든 속성의 이름으로 정의한다. (정적)

ex) 고객(고객아이디, 고객이름, 나이, 등급, 직업, 적립금)

 

2) 릴레이션 인스턴스 : 어느 한 시점에 릴레이션에 존재하는 튜플들의 집합이다. (동적)

관계 데이터 모델의 예

이 모델에서 속성의 개수(디그리)는 6개, 튜플의 개수(카디널리티)는 4개이다.

4. 릴레이션의 특성

1) 튜플의 유일성 : 하나의 릴레이션에는 동일한 튜플이 존재할 수 없다.

2) 튜플의 무순서 : 하나의 릴레이션에서 튜플 사이의 순서는 무의미하다.

3) 속성의 무순서 : 하나의 릴레이션에서 속성 사이의 순서는 무의미하다.

4) 속성의 원자성 : 속성 값으로 원자 값만 사용할 수 있다.

5. 키(KEY) (중요)

1) 키란?  : 릴레이션에서 튜플들을 유일하게 구별하는 속성 또는 속성들의 집합이다.

2) 종류 : 기본키, 후보키, 대체키, 슈퍼키, 외래키

3) 특성 : 유일성 (하나의 릴레이션에서 모든 튜플은 서로 다른 키 값을 가져야 함), 최소성 (꼭 필요한 속성들로만 키 구성)

 

1. 키의 종류

1) 슈퍼키 : 유일성을 만족하는 속성 또는 속성들의 집합

2) 후보키 : 유일성과 최소성을 만족하는 속성 또는 속성들의 집합

3) 기본키 : 후보키 중 기본적으로 사용하기 위해 선택한 키

4) 대체키 : 기본키로 선택되지 못한 후보키

5) 외래키 : 다른 릴레이션의 기본키를 참조하는 속성 또는 속성들의 집합

→ 외래키 속성과 그것이 참조하는 기본키 속성의 이름은 달라도 되지만 도메인은 같아야 한다.

→ 하나의 릴레이션에는 외래키가 여럿 존재할 수 있고 외래키를 기본키로 사용할 수 있다.

→ 같은 릴레이션의 기본키를 참조하는외래키도 정의할 수도 있고, NULL 값을 가질 수 있다.


2. 관계 데이터 모델의 제약

1. 무결성 제약조건

- 데이터의 무결성을 보장하고 일관된 상태로 유지하기 위한 규칙

 

1) 개체 무결성 제약조건 : 기본키를 구성하는 모든 속성은 NULL 값을 가질 수 없다.

2) 참조 무결성 제약조건 : 외래키는 참조할 수 없는 값을 가질 수 없다. (그렇다고 NULL 값을 가진다 해서 제약조건을 위반한 것은 아니다.)