본문 바로가기

Database

[Database] 제약조건(CONSTRAINT) 알아보기 (추가,삭제)

안녕하세요

호고코입니다 ㅎㅎㅎㅎㅎ

 

오늘은 제약조건에 대해서 정리를 해볼께요!

 

1. 제약조건이란?

제약조건 정의
데이터의 무결성을 유지하기 위한 데이터베이스의 보편적인 방법
테이블의 특정 컬럼에 설정하는 제약
※ 데이터 무결성
데이터베이스의 값과 현실 세계의 값이 일치하는것
테이블 생성 후에도 제약조건을 적용 및 수정할 수 있음

2. 제약조건 종류

PRIMARY KEY
(기본키)
테이블 행 데이터를 고유하게 식별하기 위한 키
하나의 테이블에 하나의 기본키 제약만 정의가능
※ 기본키 제약
고유키 제약 + NOT NULL 제약
UNIQUE KEY
(고유키)
테이블 행 데이터를 고유하게 식별하기 위한 고유키
NULL은 고유키 제약의 대상이 아님
NOT NULL
NULL 값의 입력을 받을 수 없음( 해당 칼럼의 입력값은 필수)
CHECK의 일부분으로 이해할 수 있음
CHECK
입력할 수 있는 값의 범위를 제한
FOREIGN KEY
(외래키)
테이블간의 관계를 정의하기 위해 기본키를 다른 테이블의 외래키로 복사

 

3. NULL과 DEFAULT의 의미

NULL
공백이나 숫자0과는 다른 값
조건에 맞는 데이터가 없을 때의 공집합과 다름
아직 정의되지 않은 미지의 값
현재 데이터를 입력하지 못하는 경우
DEFAULT
사전에 설정할 수 있으며,
지정하지 않은 경우 NULL값이 입력

4. 제약조건 추가

기본키가 추가됐습니다.

ALTER TABLE (테이블명) ADD CONSTRAINT (제약조건명) 제약조건 (컬럼명);
 
 

 

5. 제약조건 삭제

제약조건이 삭제됐습니다.

ALTER TABLE (테이블명) DROP CONSTARINT (제약조건명);