수정전 전체 DB 모델링)
수정후 전체 DB 모델링)
물리적 DB 모델링)
<회원과 주문의 관계>
- 회원은 여러 개의 주문을 가질 수 있다(한 명의 회원이 여러 개의 주문서를 가질 수 있음)
<주문 프로세스>
1. 로그인 후 장바구니에서 여러 개의 상품들을 한꺼번에 주문할 수 있음(장바구니 특성상 여러 개의 품목들을 장바구니에 넣어놓고 한 번에 주문 가능)
ex) 장바구니 테이블에서 해당 회원이 장바구니에 추가한 상품이 있는지 확인 후 여러 개 있을 경우는 리스트로 가져옴
주문번호 - 3번 , 나이키 신발(가격:2000, 수량:10) , 아디다스 신발(가격:3000, 수량:20)
주문번호 - 4번 , 무신사 셔츠(가격:5000, 수량:5)
2. 로그인 후 해당 상품을 보던 도중에 주문을 할 수 있음
ex) 주문번호 - 1번 , 한국사 신발(가격:3000, 수량:3)
---> 전체적인 주문 프로세스를 설명하자면 ( 로그인 후 해당 상품을 주문하기 버튼 클릭 OR 장바구니에서 한 번에 주문 클릭 -> 주문서 작성 페이지가 나타남 -> 주문서 작성(주소, 휴대번호.. 등등)을 완료하고 결제버튼을 누른 후 결제가 완료되면 주문서가 작성됨 )
---> 주문과 주문 상세내역 두 가지로 테이블을 나눠야 되는 이유가 있을까?? 이거에 대해서 알아보기!!
<주문과 주문상세의 관계 (1:M)>
- 하나의 주문에는 여러 개의 주문 상품들이 포함될 수 있음
<주문 테이블과 주문 상세 테이블 이렇게 두 가지로 나눈 이유는??>
1. 하나의 주문에는 여러 개의 상품들이 들어갈 수 있음
ex) 장바구니에 여러개의 상품들을 넣어놓고 한 번에 주문을 하는 경우
2. 하나의 주문에 여러 개의 상품들이 들어가게 되면 주문번호(PK)로 각각의 상품들을 구분해서 뽑아낼 수 없음(중복되는 값이 생길 수 있음)
-> 주문한 각각의 상품정보를 관리하기 위해서 주문상세 테이블을 생성해 주문 상세 번호(PK)를 생성해 중복되는 데이터를 없앨 수 있음
<상품 테이블과 상품 카테고리의 관계>
- 관리자가 상품을 등록할때 상품 카테고리(상의, 하의, 신발)에 존재하는 것들에서만 카테고리 선택이 가능
기타 사항)
전체적으로 필요한 큰 틀만 잡고 세부적인 것들(게시판, 채팅)은 나중에 따로 추가를 하자
참고 2:velog.io/@ash3767/DB-ERD-%EB% AA% A8% EB% 8D% B8% EB% A7%81
'프로젝트' 카테고리의 다른 글
쇼핑몰 결제 서비스 사용하기 (0) | 2020.12.17 |
---|---|
2차 DB설계 (0) | 2020.12.15 |
장바구니 구현하기 (0) | 2020.12.11 |
상품 대댓글 구현하기 (0) | 2020.12.11 |
쇼핑몰 프로젝트 기획안 (1) | 2020.12.01 |