개인 마트 관리 시스템 DB 테이블 설계하기
이 포스트를 계속 수정하면서 "마트 관리 애플리케이션"의 테이블을 만들어 볼 예정이다.
사촌 형 부탁으로 마이크로 애플리케이션을 만들기 때문에 일반적인 쇼핑몰 or 마트 관리앱과는 다를 수 있다.
* 배송X, 재고X, 결제(아임포트)X, 후기X, 댓글X
- 필요한 테이블
고객테이블
상품테이블
상품카테고리테이블
주문테이블
주문상세테이블
장바구니테이블 (장바구니는 쿠키(?)로 짠다고 들었는데 모르겠다..)
장바구니는 쿠키로 저장하기로 결정했다. 디비로 구성할 수도 있는것으로 알고 있는데 어떤 것이 더 좋은? 현명한 방법인지는 모르겠다.
MySQL상에서 하고 있어서 워크벤치로 reverse engineer.. 를 실행시켜서 설계한 테이블의 ERD를 가져왔다.
최대한 미니멀(?)하게 구성했다.
USER테이블에서 ID를 기본키로 사용하면 안되는것(회원탈퇴등의 이유..)을 알지만... 일단은 그렇게 지정했다.
상품테이블에 원산지, 유통기한등의 정보가 더 생길 수 있지만 간단하게 지정했다.
대부분의 테이블 아이디를 오토인크리먼트 속성을 지정했다.
상품(상품id, 상품명, 상품가격, 이미지경로, 카테고리)
카테고리(카테고리id, 카테고리명)
주문상세(주문상세id, 주문id, 상품명, 수량, 단가)
주문(주문id, 유저id, 주문날짜, 총액, 배송상태) => 배송했는지 안했는지 관리자에서 처리만 할 예정.(특이케이스)
유저(유저id, 유저pw, 이름, 주소, 폰넘버, 집전화번호)
tbl_product에 on_sale(판매중인지 아닌지), on_discount(할인중인지 아닌지) 컬럼이 추가되었다.
on_sale컬럼이 추가된 이유는 만약에 관리자가 상품을 삭제했을 때 실제 상품을 삭제하는 것이 아니라 삭제한 것처럼만 보이고 데이터는 유지해야하기 때문에 추가하게 되었다.
하다가 바뀌면 또 올릴 예정.