키(Key)란, 데이터베이스에서 튜플(또는 레코드, 행) 간 구분을 위한 값 또는 속성이다.
키는 유일키, 복합키, 외래키 등이 있으며, SQL에서 이러한 키를 설정하는 방법은 아래와 같다.
유일키(Primary Key)
테이블에서 튜플(레코드, 행)을 구분 지어주는 고유 식별 값(속성)이다. 유일키로 설정되는 값(속성)은 중복되거나 NULL이 될 수 없다.
-- 여기서 테이블명이나 속성명 등은 따옴표가 아니라 백틱(`)으로 감싸준다는 것을 명심할 것
CREATE TABLE `테이블명`{
`속성명1` 타입,
`속성명2` 타입,
...
PRIMARY KEY(`유일키로 설정할 속성명`)
};
복합키(Composite Key)
두 개 이상의 속성을 활용하여 일종의 묶음으로써 다른 값(속성) 묶음과 구분 지어주는 방법이다.
-- 여기서 테이블명이나 속성명 등은 따옴표가 아니라 백틱(`)으로 감싸준다는 것을 명심할 것
CREATE TABLE `테이블명`{
`속성명1` 타입,
`속성명2` 타입,
...
PRIMARY KEY(`복합키로 설정할 속성명1`, `복합키로 사용할 속성명2`)
};
외래키(Foreign Key)
다른 테이블의 키와 연결을 해주는 키이며, 참조의 무결성을 유지하기 위해 활용된다.
- 참조의 무결성이란 외래키 값이 참조 중인 테이블의 값과 일관성을 가지는 것을 의미한다.
- 다른 테이블에서 해당 키 값을 참조하고, 현재 테이블에 추가 또는 수정하려는 값이 참조하는 테이블에 없는 값이라면 동작하지 않도록 한다.
-- 여기서 테이블명이나 속성명 등은 따옴표가 아니라 백틱(`)으로 감싸준다는 것을 명심할 것
CREATE TABLE `테이블명`{
`속성명1` 타입,
`속성명2` 타입,
...
FOREIGN KEY(`외래키로 설정할 속성명`) REFERENCES `참조하는 속성이 있는 테이블`(`참조할 속성명`)
};
'지극히 개인적인 공부 노트 > 데이터베이스(Database)' 카테고리의 다른 글
[SQL] 대표적인 DDL 명령어(feat. CREATE, SHOW, USE, ALTER, DROP) (0) | 2021.09.28 |
---|---|
[SQL] 뷰(VIEW) 간단 정리 (0) | 2021.09.28 |
[SQL] JOIN 활용하기 (0) | 2021.09.26 |
[SQL] 일반 집합 연산(feat. UNION, INTERSECT, EXCEPT) (0) | 2021.09.25 |
[SQL] 서브 쿼리와 서브 쿼리의 분류(feat. 반환, 위치에 따른 분류) (0) | 2021.09.24 |