[SQLD/P] 키(Key)

Hyo Kyun Lee·2022년 12월 1일
0

SQLD/P

목록 보기
50/82

1. 개요

각 table들을 유일하게 식별할 수 있는 인자는 두가지 종류가 있다.

  • 기본키(Primary Key)
  • 유일키(Unique Key)

이 중 table간 관계에서도 많이 활용하며, data 조작시 가장 중요한 개념인 Primary key와 그 이외 키들에 대해 알아본다.

먼저, table을 만들때 어떤 속성을 유일한 식별자로 정할지 고민한다.

2. 후보키

그 고민한 후보 속성들이 후보키가 된다.

말 그대로 키가 될 수 있는 후보들이다.

3. 대체키

후보키 중에 실제 table의 Primary key를 정한다.

이때 primary key를 제외한 나머지 키는, primary key를 대체할 수 있다는 의미로 대체키라 한다.

4. 기본키(Primary key)

table을 식별할 수 있는 인자로 최종 선택된 항목이다.

이때 유의할 점은,

  • 기본키는 table 당 단 하나이다.
  • 기본키는 여러개의 COLUMN으로 구성할 수 있고, 하나의 COLUMN으로만 이루어질 수 있다.

5. 복합키

COLUMN 여러개가 Primary key를 이루고 있다면, 이를 복합키라 한다.

물론, 복합키는 기본키(Primary key)의 일환이며 table 당 단 하나만 존재할 수 있다.

각 행들을 구분할 수 있는 column의 집합이라고도 하며, 개념상 슈퍼키와 동일한 것으로 보인다.

6. 키 설정 쿼리

CREATE TABLE 
COLUMN PK PRIMARY KEY

→ 처음부터 PRIMARY KEY라 명시할 경우

또는

CREATE TABLE
...
ADD CONSTRAINT PRIMAKRY KEY(PK)

→ 쿼리 마지막에 제약조건으로 PK설정을 할 경우

또는

CREATE TABLE
..
ALTER TABLE ADD CONSTRAINT PK PRIMKARY KEY(PK)

→ 별도의 ALTER 쿼리로 PK 제약조건을 설정할 경우

7. 참고자료

키 종류 - https://coding-factory.tistory.com/220
복합키 - https://gaemi606.tistory.com/entry/Composite-Key-%EB%B3%B5%ED%95%A9-%ED%82%A4

0개의 댓글