본문 바로가기
CS/데이터베이스

[Database] 관계 데이터 모델 / 릴레이션

by 루시킴 2021. 9. 14.

관계 데이터 모델의 개념

릴레이션을 사용하여 모든 데이터를 논리적으로 구성한 것관계 데이터 모델이다

 

릴레이션 : 행과 열로 이루어진 2차원 테이블, 튜플의 집합

레코드 : 릴레이션의 각 행

튜플 : 행을 의미

애트리뷰트 : 열을 의미

카디날리티 : 튜플의 수 

차수 : 애트리뷰트의 수

스키마 : 릴레이션이 어떻게 구성되는지에 대한 기본적인 구조로 첫 행을 의미 

도메인 : 한 애트리뷰트에 나타날 수 있는 값들의 집합

릴레이션 스키마

릴레이션의 이름과 릴레이션 애트리뷰트의 집합이다

표기법은 릴레이션 이름 (애트리뷰트1, 애트리뷰트2, ... ) 으로, 기본 키 애트리뷰트에 밑줄 표시한다

내포라고 한다

 

릴레이션 인스턴스

릴레이션의 어느 시점에 들어있는 튜플들의 집합이다

시간의 흐름에 따라 계속 변한다

외연라고 한다


릴레이션의 특성

  • 각 릴레이션은 오직 하나의 레코드 타입만 포함
  • 한 애트리뷰트 내의 값들은 모두 같은 유형
  • 애트리뷰트와 튜플의 순서는 중요하지 않음
  •  가 존재하기 때문에 동일한 튜플이 두 개 이상 존재하지 않음 
  • 한 튜플의 각 애트리뷰트는 원자값을 가짐


릴레이션의 키

각 튜플을 고유하게 식별할 수 있는 하나 이상의 애트리뷰트들의 모임

 

1) 슈퍼키 

한 릴레이션 내의 특정 튜플을 고유하게 식별하는 하나의 애트리뷰트 또는 애트리뷰트들의 집합

예시) 신용카드 회사의 고객 릴레이션에서 (신용카드번호, 주소) 또는 (주민등록번호, 이름) 또는 (주민등록번호)

 

2) 후보키 

튜플을 고유하게 식별하는 최소한의 애트리뷰트들의 모임

모든 릴레이션에는 최소한 한 개 이상의 후보 키가 있으며, 두 개 이상의 애트리뷰트로 이루어진 경우
복합 키라고 부름

예시) (신용카드번호, 주소)는 신용카드 회사의 고객 릴레이션의 후보 키가 아니지만 (신용카드번호)는 후보 키

예시) 아래 사진에서 (학번,과목번호)는 후보키

3) 기본키 

여러 후보키 중 하나 대표로 선정한 키

4) 대체키 

기본키가 아닌 후보키

5) 외래키 

어떤 릴레이션의 기본 키를 참조하는 애트리뷰트

자체 릴레이션의 기본키를 참조할 수도 있음 

 

키들의 포함관계

'CS > 데이터베이스' 카테고리의 다른 글

[Database] SQL  (0) 2021.10.08
[Database] 관계 대수와 SQL (2)  (0) 2021.10.08
[Database] 관계대수와 SQL  (0) 2021.09.23
[Database] DBMS 발전과정/분류/언어  (0) 2021.09.07
[Database] 데이터베이스란?  (0) 2021.09.02

댓글