테이블의 각 레코드를 식별
중복되지 않은 고유값을 포함
NULL 값을 포함할 수 없음
테이블 당 하나의 기본키를 가짐
직접 기본키를 설정하기 보다 디자인 되어있는 데이터베이스 내에서 기본키를 사용하는 방법에 집중!
Create Table 테이블 이름
(
column1 datatype NOT NULL,
column2 datatype NOT NULL
...
CONSTRAINT constraint_name(생략 가능)
PRIMARY KEY (column1, column2, ...)
);
Create Table person
(
id int NOT NULL,
name varchar(16),
age int,
sex char,
PRIMARY KEY (pid)
);

Create Table animal
(
name varchar(16) NOT NULL
type varchar(16) NOT NULL
age int,
PRIMARY KEY (name, type)
);
name, type이 각각 PRIMARY KEY가 두 개가 아니라 둘이 하나의 PRIMARY KEY

Alter talbe 테이블 이름
DROP PRIMARY KEY;


이미 만들어진 테이블에서 PRIMARY KEY 속성 추가
ADD PRIMARY KEY (column1, column2, ..)
하나의 컬럼을 기본키로 지정
Alter table person
ADD PRIMARY KEY(id);

Alter table animal
ADD CONSTRAINT PK(기본키 약자)_animal PRIMARY KEY (name, type);
