DataBase
[DB] 프라이머리 키 (primary key)
커밍이즈스프링
2022. 2. 16. 10:48
반응형
primary key는 주 식별자, 주 키 또는 줄여서 'PK' 라고 부른다.
데이터베이스를 설계할 때에는 보통 PK라고 쓴다.
프라이머리 키의 컬럼 값은 서로 달라야 하며, 빈 값을 허용하지 않아야 한다.
즉 unique 해야 하며, not null 해야 한다는 의미이다.
또한, 프라이머리키의 데이터 타입으로는 일반적으로 SERIAL을 사용한다.
DROP TABLE IF EXISTS contact;
CREATE TABLE contact(
id SERIAL NOT NULL PRIMARY KEY,
name VARCHAR(10)
);
일반적으로 프라이머리 키는 테이블에 하나1️⃣이다.
하지만, 외래 키(Foreign key) 제약조건에 의해 프라이머리 키가 여러 개일 경우, Unique 제약조건과 유사하게 다음과 같은 형태로 여러 개의 프라이머리 키를 선언 할 수 있다.
모든 컬럼들을 선언한 후 프라이머리 키를 설정하는 것이다.
CREATE TABLE book(
id SERIAL NOT NULL,
name VARCHAR(10) not null,
admin_id SERIAL NOT NULL REFERENCES contact(id),
email VARCHAR,
PRIMARY KEY(id, admin_id)
);
반응형