본문 바로가기
DB

[DB] super key, candidate key, primary key, unique key, 1NF, 2NF, 3NF, BCNF

by 오렌지마끼야또 2024. 3. 18.
728x90
반응형

 

 

 

 

 

이쁘게 그림도 넣고 설명하고 싶지만 지금은 공부만 하는걸로도 시간이 부족하다.. 일단 설명만,,

 

 

 

 

super key : unique하게 식별할 수 있는 컬럼을 포함하고 있는 모든 컬럼셋

candidate key(후보키) : unique한 컬럼만 가지고 있는 컬럼셋. 

super key는 unique하지 않은 컬럼을 포함하고 있지만, candidate key는 여기서 딱 unique한 컬럼만 가지고 있는 minimal한 super key 이다. 
super key ⊃ candidate key

primary key(기본키) : candidate key에서 선택한 key

unique key : primary key로 선택하지 않은 나머지 candidate key

primary key + unique key = candidate key

prime attribute : candidate key 에 포함되는 컬럼

non-prime attribute : candidate key 에 포함되지 않는 컬럼

 

 

 


FD(functional dependency) : 어떤 컬럼이 특정 컬럼에 의해 값이 결정 되는 것.

1NF : 컬럼의 value는 여러개의 값을 가지면 안된다

2NF : non-prime attribute는 모든 candidate key에 대해 fully FD 해야한다. 여러 컬럼으로 이루어진 candidate key에 속하는 하나의 prime attribute에 의해 non-prime attribute가 개별적으로 FD하면 안된다.

3NF : non-prime attribute끼리 FD하면 안된다.

BCNF : FD(X -> Y)에서 X는 super key여야 한다.

 

 

 

 

 

 

참고

 

https://www.youtube.com/watch?v=gjcbqZjlXjM&list=PLcXyemr8ZeoREWGhhZi5FZs6cvymjIBVe&index=3

 

https://www.youtube.com/watch?v=fw8hvolebLw&list=PLcXyemr8ZeoREWGhhZi5FZs6cvymjIBVe&index=23

 

https://www.youtube.com/watch?v=EdkjkifH-m8&list=PLcXyemr8ZeoREWGhhZi5FZs6cvymjIBVe&index=23&pp=iAQB

 

https://www.youtube.com/watch?v=5QhkZkrqFL4&list=PLcXyemr8ZeoREWGhhZi5FZs6cvymjIBVe&index=24&pp=iAQB

 

728x90
반응형

댓글