제약 조건으로 테이블을 견고하게 할 수 있다.
데이터의 오류를 줄여 완전 무결한 코드를 만들 수 있다.
제약 조건은 데이터의 무결성을 지키기 위해 제한하는 조건이다.
종류들
PRIMARY KEY 제약조건
FOREIGN KEY 제약조건
UNIQUE 제약조건
CHECK 제약조건
DEFAULT 정의
NULL 값 허용
기본 키 제약조건 PRIMARY KEY 제약조건
1개 열에 기본키 제약 조건을 설정할 수 있다.
이 것으로 구분할 수 있다. 중복 X NULL허용 X
기본키로 하면 클러스터형 인덱스가 생성된다.
외래 키 제약 조건 UNIQUE 제약조건
두 테이블 사이의 관계를 연결해주고, 그 결과 데이터의 무결성을 보장해주는 역할을 하고
외래 키가 설정된 열은 꼭 다른 테이블의 기본 키와 연결이 된다.
고유 키 제약조건 UNIQUE 제약조건
중복되지 않는 유일한 값을 입력해야한다. 기본키의 제약 조건과 비슷하지만
차이점은 고유 키 제약조건은 Null 값을 허용한다.
Null값은 여러개 입력 되어도 상관 없고, 기본 키는 테이블에 1개만 설정해야하지만
고유 키는 여러개를 설정해도 된다.
EX) 회원 테이블에 Email 주소가 있다면 중복되지않으니 고유키로 설정 가능.
체크 제약조건 CHACK 제약 조건
입력되는 데이터를 점검하는 기능을 한다.
기본값 정의 DEFAULT 정의
값을 입력하지 않았을 때 자동으로 입력될 값을 미리 지정해 놓는 방법이다.
널 값 허용 NULL 값 허용
Null 허용하려면 생략하거나 Null 을 사용하고
허용하지 않으려면 NOT NULL을 사용한다.
다만, PRIMARAY KEY가 설정된 열에는 NULL 값이 잇을 수 없으므로
생략하면 자동으로 NOT NULL 로 인식된다.
NULL 값은 부재, 미정의, 아무것도 없다는 의미로 공백('')이나 0과는 다르다.
'개념 창고 > Database' 카테고리의 다른 글
(혼공MySQL)15.인덱스의 개념과 장단점, 클러스터형 인덱스와 보조 인덱스 (0) | 2023.03.20 |
---|---|
(혼공MySQL)14. 가상의 테이블: 뷰(생성, 수정, 삭제) (0) | 2023.03.20 |
(혼공MySQL)11.SQL 프로그래밍(IF문, CASE문, WHILE문, 동적SQL) (0) | 2023.03.20 |
(혼공MySQL)10. 두 테이블을 묶는 JOIN(INNER JOIN, OUTER JOIN, CROSS JOIN, SELF JOIN) (0) | 2023.03.20 |
(혼공MySQL)9. MySQL의 데이터 형식(정수형, 문자형, 실수형, 날짜형)과 형 변환 (0) | 2023.03.20 |