DB basic
Key
Primary key란?
Primary key(기본키)란, candidate key(후보키) 중 main key로써, 각 row를 unique하게 구분하는 column이다. primary key는 null값을 가질 수 없고, 중복된 값을 가질 수 없다. 기본키는 table당 하나의 column만 지정해야한다.
Super key란?
Super key(슈퍼키)는 각 row를 유일하게 식별할 수 있는 하나 또는 그 이상의 속성들의 집합이다. 슈퍼키는 유일성만 만족하면 된다.
※ 유일성 : 하나의 key값으로 특정 row를 유일하게 찾을 수 있어야 한다.
ex : 학번 / 학번,이름 / 주민번호 / 주민번호, 학과
등
-> 학번과 이름을 같이 슈퍼키라고 볼 수 있다.
Candidate key란?
Candidate key(후보키)란 Super key 중 더이상 쪼개질 수 없는 Super key를 Candidate key라고 한다. 즉, 각 row를 유일하게 찾을 수 있는 key 중 최소한의 속성들의 집합이다.
ex: 위에서 든 예시 중 (학번,이름)은 학번과 이름으로 쪼개지기 때문에 후보키가 될 수 없다. 다만, 학번은 학번 자체로 row를 찾을 수 있기 때문에 후보키가 가능하다.
Alternative key
Candidate key 중 primary key를 제외한 나머지들을 Alternative key(대체키)라고 한다.
- primary key : candidate key 중 선택한 main key, null값과 중복된 값을 가질 수 없다.
- super key : 각 row를 유일하게 식별할 수 있는 key, 여러개의 묶음이여도 된다.
- candidate key : super key 중, 최소한의 속성의 집합이다.
- alternative key : candidate key 중, primary key를 제외한 나머지이다.
댓글남기기