일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- 백준
- AOP
- CircuitBreaker
- 의존성
- 세션
- Level2
- 프리코스
- Paging
- yml
- 프로그래머스
- 스프링부트
- HTTP
- 트랜잭션
- Docker
- 코드리뷰
- 우아한테크코스
- 스프링 부트
- 서블릿
- 레벨2
- REDIS
- 우테코
- JUnit5
- mock
- 자바
- Spring Batch
- MSA
- 우아한세미나
- AWS
- 미션
- JPA
Archives
- Today
- Total
늘
식별자와 비식별자 본문
728x90
자주 햇갈려서 정리해두었다. 짧고 굵게 이해하기 쉽게 정리해봤다.
식별자
- 부모테이블(상품, 주문테이블) 기본키(PK)가 자식 테이블(주문_상품)의 외래키이자 기본키로 사용되는 관계이다.
- 자식 테이블의 행(정보)를 추가할 때 부모테이블의 참조 행(상품번호 또는 주문번호)이 없다면 자식테이블의 행을 추가 할 수 없다.
: 주문_상품테이블은 상품번호와 주문번호 중 하나라도 없다면 기본키를 만들 수 없게 되고(두개의 외래키가 합쳐 기본키가 되므로) 기본키가 없어 정보를 식별할 수 없으므로 데이터를 넣을 수 없다.
: 예를 들면 게시판의 작성글과 댓글의 관계를 식별관계라고 할 수 있다.(작성글이 없다면 댓글도 없다) - 식별관계는 - 복합키 관계
비식별자
- 부모 테이블(상품, 주문테이블) 기본키가 자식 테이블(주문_상품테이블)의 일반컬럼이나 외래키(Foreign Key) 컬럼에 저장되는 관계이다.
- 자식 테이블의 행(정보)를 추가할 때 부모테이블의 참조 행(상품번호 또는 주문번호)이 없어도 자식테이블의 행을 추가 할 수가 있다.
: 예를 들면 회사의 부서와 사원의 관계를 비식별관계라고 할 수 있다. (사원이 부서가 배정되지 않을 수도 있으므로)
Reference
728x90
'백앤드 개발일지 > 데이터베이스' 카테고리의 다른 글
[postgreSQL] order by와 limit이 걸린 슬로우 쿼리 해결 방법 (0) | 2024.05.25 |
---|---|
[데이터베이스] B+Tree, 해싱, 인덱싱 정리 (0) | 2021.11.10 |
[대용량 데이터 처리] Master-Slave db replication 설정 with docker (2) | 2021.10.21 |
데이터베이스 관리 시스템(DBMS) & 튜닝 (0) | 2021.07.23 |
Comments