///////
Search
1️⃣

릴레이션과 키

릴레이션(테이블)

데이터의 집합
관계형 데이터 베이스에서 릴레이션이라 부른다.
튜플(Tuple)과 속성(Attribute)로 구성되어 있음
튜플의 집합
튜플 제거, 추가 시 릴레이션의 상태가 달라진다.

튜플(Tuple)

릴레이션에서 가로로 묶은 데이터셋
표의 행에 해당
집합의 관점에서 보기 때문에 순서가 존재하지 않는다.

속성(Attribute)

릴레이션에서 세로로 묶은 데이터 셋
표의 열에 해당

릴레이션 스키마(Relation Schema)

자료의 구조를 정의하는 것
릴레이션에 데이터를 넣을 수 있도록 하는 릴레이션 틀

관계형 데이터 베이스 스키마(관계 스키마)

각 릴레이션의 구조와 릴레이션간의 관계를 나타내는 스키마

키 (Key)

해당 튜플을 유일하게 식별할 수 있는 식별자
데이터 베이스 설계시 중요하다

키의 종류

1.
슈퍼키(Super Key)
2.
후보키(Candidate Key)
3.
기본키(Primary Key)
4.
대체키 / 유일키(Alternate Key / Unique Key)
5.
외래키(Foreign Key)

1. 슈퍼키

튜플을 유일하게 식별할 수 있는 단일속성, 그룹의 속성 (유일성을 만족)
위 테이블에서는 {회원번호}, {아이디} 가 단일속성 슈퍼키이다.
{회원번호, 아이디}, {아이디, 이름}, {회원번호, 나이, 성별}… 가 그룹 속성 슈퍼키이다.

2. 후보키

최소단위의 슈퍼키 (유일성과 최소성을 만족)
ex) 위 릴레이션
회원번호 : 제거할 속성이 없고, 최소 단위, 식별성 존재 → 최소의 슈퍼키 → 후보키
아이디 : 제거할 속성이 없고, 최소 단위, 식별성 존재 → 최소의 슈퍼키 → 후보키
{회원번호, 아이디} : 아이디 또는 회원번호 속성을 제거해도 나머지 속성이 식별성이 존재한다.
→ 최소의 슈퍼키가 아님 → 후보키가 아님
{아이디, 이름} : 이름 속성을 제거해도 나머지 속성이 식별성이 존재한다.
→ 최소의 슈퍼키가 아님 → 후보키가 아님
{회원번호, 나이, 성별} : 나이 또는 성별 속성을 제거해도 나머지 속성이 식별성이 존재한다.
→ 최소의 슈퍼키가 아님 → 후보키가 아님

3. 기본키

후보키 중에서 릴레이션을 대표할 키로 정한 것
Null 값이 들어갈 수 없다.

4. 대체키 / 유일키

후보키에서 기본키를 제외한 나머지 키
ex)
위 릴레이션에서 회원번호를 기본키로 정했다면, 아이디는 대체키가 된다.

5. 외래키

릴레이션 간의 기본키를 참조하는 속성
릴레이션 간의 관계를 나타내기 위해서 사용
→ 참조하는 릴레이션이 외래키를 통해 참조되는 릴레이션을 참조한다.

키의 집합 관계

아래 벤다이어그램으로 표현할 수 있다.