티스토리 뷰

키(Key)


데이터베이스에서 키의 종류는 여러가지가 있다. 아래와 같은 3개의 릴레이션이 있다고 가정해보자.


학생 릴레이션

학번

이름

나이

학과

17-66503271

김다현

22

실용음악과

10-82765666

김고은

29

연극영화과

09-88754723

김태리

30

연극영화과


메뉴 릴레이션

번호

이름

가격

1

치즈돈까스

4000

2

라면

2000

3

김밥

1500

4

순대국밥

4000


주문 릴레이션

학번

번호

날짜

17-66503271

2

2019-03-17

17-66503271

3

2019-03-17

09-88754723

1

2019-03-17

10-82765666

4

2019-03-18

09-88754723

4

2019-03-18



슈퍼키

(Super key)

유일성을 만족하는 속성들의 집합. 이 키로 검색을 하면 유일한 튜플이 나와야 한다.

ex_학생 릴레이션에서 {학번, 이름}, {학번, 나이}, {학번, 이름, 나이, 학과} 등이 이에 속하지만 {학과}는 슈퍼키가 될 수 없다.

후보키

(Candidate key)

슈퍼키 중에서 유일성을 만족시킬 수 있는 최소한의 집합을 말한다.

ex_학생 릴레이션에서 {학번}, {이름} 이 여기에 속한다.

기본키

(Primary key)

후보키 중에서 기본적으로 사용하는 키를 말한다.

ex_학생 릴레이션에서 {학번}, {이름}이 후보키지만 {학번} 을 기본키로 사용하는것이 바람직한 선택이다. 기본키는 데이터베이스를 구축할 때 정책에 따라 다르게 선택될 수 있다.

외래키

(Foreign key)

다른 릴레이션의 기본키를 참조하는 속성들의 부분집합.

주문 릴레이션에서 {학번}, {번호}가 여기에 속한다.

대리키

(Alternate key)

후보키가 둘 이상일 때 기본키로 선택되지 못한 키들. 보조키라고도 한다.

ex_학생 릴레이션에서 {학번}을 기본키로 선택했다면 {이름}이 여기에 속하게 된다.

대체키

(Surrogate key)

자연적인 값이 아니라 데이터베이스를 만들기 위해 임의로 만들어낸 값들을 말한다.

ex_메뉴 릴레이션에서 {번호} 가 여기에 속한다.


댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함