안녕하세요.
오늘은 SQL DDL(데이터 정의 언어) 부문에서 기초지식인 기본키(Primary Key)에 대해서 공부해보겠습니다.
SQL 기본키 Primary Key
▣ 기본키(Primary Key)란?
데이터베이스(DB) 테이블 내의 모든 행에게 고유한 아이디(인덱스)를 부여하게 해주는 값(열)
즉, 하나의 테이블에서 각 행의 데이터를 유일하게 확인하는 데 사용됨.
- 기본키는 하나 이상의 필드를 포함할 수 있으며, 만약 여러 필드를 포함할 경우에는 복합키(Composite Key)라고 함.
- 기본키에는 NULL이 존재할 수 없으며 기본키를 생성할 시 해당 열의 값에는 비어있지 않고 고유한 값을 가지게 됨.
▣ SQL별 기본키(Primary Key) 설정 방법 (Create Table - 테이블 생성)
구분 | 기본키 설정 방법 |
MySQL | 마지막 부분에 Primary key (컬럼) 입력 |
Oracle | 해당 컬럼 + Primary Key 입력 |
SQL Server |
- 여러 컬럼을 기본키로 설정 시엔 여러 컬럼에 입력하면 됨.
: SQL별 기본키 설정 예시
--MySQL
CREATE TABLE EXAMPLE (
id INTEGER,
last_name VARCHAR(30),
first_name VARCHAR(30),
PRIMARY KEY (id)
);
--Oracle, SQL Server
CREATE TABLE EXAMPLE (
id INTEGER PRIMARY KEY,
last_name VARCHAR(30),
first_name VARCHAR(30)
);
▣ SQL별 기본키(Primary Key) 설정 방법 (Alter Table - 테이블 변경)
구분 | 기본키 설정 바꾸기 방법 |
MySQL | ALTER TABLE 테이블명 ADD PRIMARY KEY (컬럼명); |
Oracle | |
SQL Server |
- 주의할 점은 기본키로 설정할 필드(컬럼)가 NOT NULL인지 확인해야 함.
- 기본키(Primary Key)는 NULL이 아닌 고유한 값이 항상 들어가 있어야 하는 필드이기 때문.
References
반응형
'Programming > SQL' 카테고리의 다른 글
[MySQL] 행과 열 바꾸기 (Transpose) (2) | 2022.11.12 |
---|---|
[SQL] 외래키 Foreign Key (1) | 2022.11.11 |
[MySQL] auto_increment 자동증가 설정 (0) | 2022.10.26 |
SQL 조건문 (CASE WHEN, DECODE) (0) | 2022.07.17 |
[MySQL] with recursive 재귀쿼리 (개념/예제) (0) | 2022.02.14 |
댓글