MySql Database 릴레이션 용어 정리

 

Summry

본 문서에서는 릴레이션의 개념 및 용어를 정리한다.

send me email if you have any questions.


릴레이션(relation)

릴레이션이란 두 개 이상의 집합이 주어질 때 각 집합을 구성하는 원소들의 순서쌍에 대한 집합이다.
테이블을 릴레이션이라고 함

릴레이션 예시

이름 전화번호 주소 생일
홍길동 010-1234-5678 서울 3월 15일
이건우 010-2132-2345 서울 8월 23일
이몽룡 010-3245-4368 부산 12월 14일

속성(attribute)

속성은 내가 저장하고 싶은 개체의 어떤 학몽에 해당한다.

이름 전화번호 주소 생일
홍길동 010-1234-5678 서울 3월 15일
이건우 010-2132-2345 서울 8월 23일
이몽룡 010-3245-4368 부산 12월 14일

위의 릴레이션에서 이름, 전화번호, 주소, 생일은 속성(attribute)에 해당한다.
하나의 열은 하나의 속성 정보를 표시하며 동일한 릴레이션 내에서는 같은 이름의 속성이 존재할 수 없다.

차수(degree)

한 릴레이션에 들어 있는 속성(attribute)의 수를 차수(dgree)라고 한다.
유효한 릴레이션의 최소 차수는 1이며 모든 릴레이션은 적어도 한 개의 속성을 가져야 한다.

이름 전화번호 주소 생일
홍길동 010-1234-5678 서울 3월 15일
이건우 010-2132-2345 서울 8월 23일
이몽룡 010-3245-4368 부산 12월 14일

위의 릴레이션에서 차수는 4이다.

튜플(tuple)

릴레이션의 각 행을 레코드라고 한다. 레코드를 좀 더 공식적으로 튜플(tuple)이라고 부르는데 쉽게말해 행, 레코드, 튜플 모두 같은 말이라 생각하면 된다.

카디날리티(cardinality)

카디날리티(cardinality)는 릴레이션 튜플의 개수로 차수와는 다르게 0의 값이여도 유효 릴레이션이 될 수 있다. 테이블에 데이터가 없는 경우가 그러하며 카디날리티는 시간이 지남에 따라 계속 변한다.

도메인(domain)

도메인이란 릴레이션에 포함된 각각의 속성들이 가질 수 있는 값들의 집합이라고 할 수 있다.
도메인이라는 개념이 필요한 이유는 릴레이션에 저장되는 데이터 값들이 본래 의도했던 값들만 저장되고 관리하기 위해서다.
예를 들어 ‘성별’이라는 속성이 있다면 이 속성이 가질 수 있는 값은 ‘남’ 또는 ‘여’인데, 데이터베이스 설계자는 성별의 도메인으로 ‘SEX’를 정의하고 그 값으로 ‘남’, ‘여’로 지정한 뒤 ‘성별’이라는 속성은 ‘SEX’ 도메인에 있는 값만을 가질 수 있다고 지정해 놓으면 사용자들이 실수로 남, 여 이외의 값을 입력하는 것을 방지할 수 있다.
도메인의 이름은 속성 이름과 같을 수도 있고 다를 수도 있으며 하나의 도메인을 여러 속성에서 공유할 수도 있다.

Reference

[데이터베이스]릴레이션 용어- 속성(애트리뷰트), 튜플, 도메인, 차수, 카디날리티 - IT 양햄찌(jhnyang)
관계형 데이터베이스 1) 릴레이션이란? - by Nolja놀자