SQL PRIMARY KEY Constraint
PRIMARY KEY는 데이터베이스 테이블안에서 각 레코드들을 유일하게 구분한다.
primary key들은 UNIQUE값들을 반드시 포함하고 NULL값을 받을 수 없다.
SQL PRIMARY KEY on CREATE TABLE
ID를 Primary key로 만들기
MySQL:
CREATE TABLE Persons (
ID int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Age int,
PRIMARY KEY (ID)
);
SQL Server / Oracle / MS Access:
CREATE TABLE Persons (
ID int NOT NULL PRIMARY KEY,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Age int
);
여러개의 column들에 PRIMARY KEY constraint를 걸 수 있다. 이 경우에는 단 한개의 Primary key가 여러 column으로 이루어 진 것이다. 그러므로 Primary key는 한 개뿐.
MySQL / SQL Server / Oracle / MS Access:
CREATE TABLE Persons (
ID int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Age int,
CONSTRAINT PK_Person PRIMARY KEY (ID,LastName)
);
SQL PRIMARY KEY on ALTER TABLE
이미 만들어진 테이블에서 PRIMARY KEY설정하기
MySQL / SQL Server / Oracle / MS Access:
ALTER TABLE Persons
ADD PRIMARY KEY (ID);
여러개 column에 PRIMARY KEY설정하기
ALTER TABLE Persons
ADD CONSTRAINT PK_Person PRIMARY KEY (ID, LastName);
Note: 이미 생성된 테이블에 primary key를 생성할 때는 NULL 값이 없음을 선언해야한다.
DROP a PRIMARY KEY Constraint
MySQL:
ALTER TABLE Persons
DROP PRIMARY KEY;
SQL Server / Oracle / MS Access:
ALTER TABLE Persons
DROP CONSTRAINT PK_Person;
Comments