제약 조건은 테이블에 저장되는 데이터를 제약하는 특정 규칙으로
컬럼에 데이터를 넣을 경우 특정한 조건을 만족시켜야 할 경우에 사용한다.
즉, 지정된 조건에 맞지않으면 데이터 입력이 안되기 때문에 데이터의 정확성이 유지된다.
기본 키 제약 조건 ( PK ) - primary key
NOT NULL
참조 제약 조건 (외래키, 참조키 , FK) - foreign key references
연계 참조 무결성 제약 조건 - on delete cascade
유니크 제약 조건 ( 유니크 키, 후보 키) - unique
체크 제약 조건 - check
1. 기본 키 제약 조건 (Primary Key, PK)
- 테이블 당 1개만 존재
- 중복 허용 안함, NULL 허용 안함
- 한 개의 컬럼에 지정하는 것이 일반적이지만 최대 16개 컬럼에 지정할 수 있다.
=> 복합 키
테이블 생성 시 지정하는 방법 ( 가장 일반적으로 많이 사용 )
혹은
- 복합 키 : 한 개 이상의 컬럼이 합쳐져서 만들어진 키, 16개 까지 가능
이미 만들어진 테이블에 추가하는 방법
ALTER TABLE [테이블 이름] ADD CONSTRAINT [이름] [제약조건 종류] ([적용 필드]);
만들어진 테이블을 수정하는 것이기 때문에 ALTER 사용!
테이블 구조 확인하는 쿼리문 desc employees; 로 보면
혹은
제약 조건 검색 쿼리문
select * from information_schema.TABLE_CONSTRAINTS tc where TABLE_NAME = 'employees'; 로 보면
2. NOT NULL 제약 조건
- 제약 조건이라기 보다는 컬럼의 속성으로 취급한다.
- 따라서 제약 조건 검색 쿼리문이 아닌 테이블 구조를 확인하면 알 수 있다.
테이블 생성시 추가하는 방법
이미 존재하는 테이블에 추가하는 방법
ALTER TABLE [테이블명] MODIFY [컬럼명] [데이터타입]([사이즈]) NOT NULL;
제약 조건 삭제
ALTER TABLE [테이블 이름] DROP [제약조건 종류];
> 제약 조건 2 -
'Data > MariaDB' 카테고리의 다른 글
DB] 제약 조건(constraint) 2 - 참조 제약 조건 / 연계 참조 무결성 제약 조건 / 유니크 제약 조건 / 체크 제약 조건 (0) | 2022.05.06 |
---|---|
DB] 트랜젝션(TRANSACTION) (0) | 2022.05.02 |
DB] DML 2 - SELECT (0) | 2022.04.28 |
DB] DML 1 - INSERT / UPDATE / DELETE / UPSERT (0) | 2022.04.28 |
DB] DDL(데이터 정의어) / 테이블 (0) | 2022.04.28 |