Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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
- 스프링의 정석
- 시큐리티
- 생성자 주입
- 카프카
- 개인프로젝트
- JWT
- 항해99
- visualvm
- 데이터베이스
- AWS
- 스웨거
- Spring
- emqx
- 남궁성과 끝까지 간다
- docker
- Spring Security
- CentOS
- 웹개발
- 패스트캠퍼스
- JavaScript
- Kafka
- 쇼트유알엘
- @jsonproperty
- java
- MYSQL
- 프로그래머스
- WEB SOCKET
- DB
- EC2
- 스파르타코딩클럽
Archives
- Today
- Total
Nellie's Blog
항상 헷갈리는 관계형 데이터베이스 다대다 쉬운 예시 (고객 - 상품) 본문
728x90
DB를 공부할 때 다대다 관계가 제일 헷갈린다.
혼자 공부를 하면서 나중에 기억하기 쉽도록 초딩들도 이해가능한 예제를 만들어보았다.
개념적 모델링의 기본적인 ERD 작성을 위한 예시이다.
고객 - 상품은 다대다 관계
대표적인 다대다 예시인 고객-상품관계이다.
고객은 여러 상품을 구매할 수 있고, 상품은 여러 고객에게 팔릴 수 있다. 엔티티를 만들어서 이해해 보자.
이 상태로는 아무것도 할 수가 없다.
kim 이 어떤 상품을 몇개 샀는지, 신라면은 누구에게 팔렸는지 어떻게 알 수 있을까...... ???
매핑 테이블을 하나 만들어서 해결해 보자.
'상품_고객' 테이블을 만들어 일대다, 다대일로 풀어주기
이렇게 두 테이블 사이에 '상품_고객' 테이블을 넣어주니, 위의 문제점이 해결되었다!!
물론 pk 로는 고객이름, 상품명 보다는 고객id , 상품id로 작성해주는 것이 좋지만 이해가 쉽도록 위와같이 작성하였다.
'DB > Database' 카테고리의 다른 글
게시판 ERD (0) | 2023.09.15 |
---|---|
postgresql 사용방법 (0) | 2023.09.12 |
데이터 접근기술의 변천과정 (JDBC, SQLmapper, ORM) (0) | 2023.01.18 |
[SQL/oracle] commit(커밋)을 하는 이유 (0) | 2022.11.11 |
[SQL/oracle] 트랜젝션 관리 (COMMIT/SAVEPOINT/ROLLBACK) (0) | 2022.11.11 |