728x90
우리가 erd를 설계하고 실제 데이터베이스 테이블을 만들 때 해당 칼럼에 대하여 제약조건을 줄 수가 있다. 제약조건을 추가해서 해당 칼럼에 의도에 맞는 값이 올 수 있도록 하는 것이다. 그리고 칼럼들 간 제약사항을 관리하고 조건을 위반한 데이터를 방지, 무결성을 유지한다.
제약조건의 종류
- 고유 제약조건 (unique)
- 중복된 값을 가질수 없다.
- ex) 사용자 아이디, 이메일 등
- null 제약조건
- 특정 컬럼이 아무런 값을 입려받지 않도록 설정한다. 필수적으로 필요하지 않은 데이터
- not null 제약조건
- 특정 컬럼에 값이 무조건 입력되어야 한다.
- 기본키 제약조건(primary key)
- 고유하게 식별할수 있도록 보장한다.
- 외래키 제약조건(foreign key)
- 테이블관 연관 관계를 설정하는 조건
- 칼럼이 다른 다른 특정행을 참조할 수 있도록 설정
외래키 제약조건 심화(연계 참조 무결성 제약조건)
- CASCADE
- 참조하고 있는 개체가 변경/삭제 될경우 함께 변경/삭제된다.
- NO ACTION
- 참조하고 있는 객체가 변경/삭제될 경우 아무런 행위를 하지 않고 에러를 발생시킨다.
- SET NULL
- 참조하고 있는 개체가 변경/삭제될 경우 현재 데이터를 null로 변경된다.
- SET DEFAULT
- 참조하고 있는 개체가 변경삭제 될 경우 현재 데이터를 기본 값으로 변경함
'개발이야기' 카테고리의 다른 글
[TIL]32.타입스크립트 제네릭 (1) | 2023.12.05 |
---|---|
[TIL]31. 데이터베이스 트랜잭션란? (0) | 2023.12.01 |
[TIL]29. Node 환경에서 AWS S3에 이미지 업로드 (0) | 2023.11.29 |
[TIL]28. node sequelize 에서 관계 맺기 (0) | 2023.11.23 |
[TIL]27.타입스크립트 Type Predicate (0) | 2023.11.21 |