[MySQL강의] 5. 테이블 제약 조건 : Not Null, PK, Unique, Check, Default, FK와 on delete 그리고 on update

Hyejin Beck·2일 전
0

데이터베이스(SQL)

목록 보기
37/40

테이블 제약조건이란, 정확한 데이터만 저장 할 수 있도록 설정하는 것을 말합니다. 종류에는 NOT NULL, PK, FK, UNIQUE, CHECK, DEFAULT 가 있습니다.

🔷 Not Null

테이블 생성

데이터 입력/오류

정상적으로 입력됩니다.

Not Null 조건의 컬럼에는 반드시 값을 입력해줘야 합니다.
Not Null 조건이 아닌 컬럼에는 값을 입력해주지 않아도 됩니다. (Null 처리됨)

컬럼 생성

컬럼 변경 (NULL -> NOT NULL)

Null값 채워주기

🔷 PK

테이블 생성

뒤늦게 추가

🔷 테이블 정보 확인

🔷 UNIQUE

테이블 생성

데이터 입력/오류

🔷 CHECK




테이블 생성

데이터 입력/오류

🔷 SHOW 제약조건 확인

SHOW CREATE TABLE 테이블명;
을 하게되면 해당 제약조건을 볼 수 있다.

🔷 DEFAULT


테이블 생성

데이터 입력/오류


🔷 FK

두 테이블이 외래키로 연결되어 있다 = 두 테이블은 참조 무결성으로 연결되어 있다.

테이블 생성

부모테이블과 자식테이블이 필요합니다.

데이터 입력/오류

데이터 제거/오류

입력은 부모데이터 먼저!

삭제는 자식데이터 먼저!

한꺼번에 삭제 ON DELETE

테이블 생성

데이터 입력

데이터 제거

ON DELETE CASCACDE 조건이 없는 부모/자식 테이블 에서는
꼭 자식 테이블에서 공통값을 제거했었어야 합니다.

하지만 ON DELETE CASCADE 조건이 있기에 부모테이블에서 먼저 제거가 가능합니다.

한꺼번에 변경 ON UPDATE

테이블 생성

아직 아무 조건 없는 2개의 빈 테이블이 완성되었습니다.

조건 추가

데이터 입력

데이터 변경

profile
데이터기반 스토리텔링을 통해 인사이트를 얻습니다.

0개의 댓글

관련 채용 정보