코딩항해기
[Team/붕어빵원정대(중중프)] 테이블 설계 본문
팀명 : 붕어빵 원정대 (6인)
(Model 파트 2인)
담당 : Model 파트장 담당
Oracle
프로젝트 단계 : 중간 중간 프로젝트
(중간 프로젝트 전 연습단계)
1. 개념적 설계 > 2. 논리적 설계 > (물리적 설계 단계는 정규화 이후로) > 3. 정규화 1차 > 4. 정규화 2차 > 5. 정규화 3차
> 6. 피드백 > 7. 수정 > 8. 물리적 설계 > 9. 구현
> 10. 추가 요청사항 반영 > 11. 물리적 설계 > 12. 구현
(진행 단계 중 노란 밑줄 친 부분만 블로그 글로 기록 남겼다. 전체 기록은 팀 회의록에 파트 회의록에 기록을 남겼다.)
1. 개념적 설계
유저 | 게시글 | 댓글 | |
비밀번호 | 제목 | 댓글내용 | |
이름 | 내용 | 작성자 | |
닉네임(중복없음) | 이미지 | 작성일시 | |
포인트 | 작성자 | ||
찜 | 작성일시 | ||
장바구니 | 댓글 | ||
결제내역 | 첨부파일 | ||
프로필 이미지 | 공개여부 | ||
이메일 | 수정일시 | ||
작성게시글 | 게시판종류(문의/일반) | ||
작성댓글 | 좋아요 | ||
문의내역 | |||
권한(일반/점주/admin) | |||
예약내역 | |||
주소 | |||
전화번호 |
2. 논리적 설계
MEMBER 유저
PK | 회원 고유번호 | PRIMARY KEY | |
이메일 (ID) | UNIQUE | NOT NULL | |
비밀번호 | NOT NULL | ||
이름 | NOT NULL | ||
닉네임 | UNIQUE | ||
프로필 이미지 | DEFAULT 일반 | ||
권한(일반/점주/admin) | DEFAULT 일반 | ||
우편번호 | NOT NULL | ||
주소 | NOT NULL | ||
상세주소 | NOT NULL | ||
전화번호 | UNIQUE | NOT NULL |
BOARD 게시글
PK | 게시물 번호 | PRIMARY KEY | |
제목 | NOT NULL | ||
내용 | NOT NULL | ||
이미지 | |||
FK | 작성자 | FOREIGN KEY | NOT NULL |
작성일시 | DEFAULT SYSDATE | ||
첨부파일 | |||
공개여부 | DEFAULT 공개 | ||
수정일시 | |||
게시판종류(문의/일반) | DEFAULT 일반 | ||
좋아요 | DEFAULT 0 |
REPLY 댓글
PK | 댓글 고유번호 | PRIMARY KEY | |
댓글내용 | NOT NULL | ||
FK | 작성자 | FOREIGN KEY | NOT NULL |
작성일시 | DEFAULT SYSDATE | ||
FK | 게시글 번호 | FOREIGN KEY | NOT NULL |
3. 정규화 1차
MEMBER 유저
PK | 회원 고유번호 | PRIMARY KEY | |
이메일 (ID) | UNIQUE | NOT NULL | |
비밀번호 | NOT NULL | ||
이름 | NOT NULL | ||
닉네임 | UNIQUE | ||
프로필 이미지 | DEFAULT 일반 | ||
권한(일반/점주/관리자) | DEFAULT 일반 | ||
우편번호 | NOT NULL | ||
주소 | NOT NULL | ||
상세주소 | NOT NULL | ||
전화번호 | UNIQUE | NOT NULL |
BOARD 게시글
PK | 게시물 번호 | PRIMARY KEY | |
제목 | NOT NULL | ||
내용 | NOT NULL | ||
FK | 작성자 | FOREIGN KEY | NOT NULL |
작성일시 | DEFAULT SYSDATE | ||
수정일시 | |||
공개여부 | DEFAULT 공개 | ||
좋아요 | DEFAULT 0 | ||
FK | 카테고리 | NOT NULL |
CATEGORY 게시판 종류 문의/일반
PK | 종류 번호 | PRIMARY KEY | |
카테고리 이름 | NOT NULL |
IMAGE 이미지
PK | 이미지 번호 | PRIMARY KEY | |
이미지 서버 경로 | NOT NULL | ||
FK | 게시물 번호 | FOREIGN KEY | NOT NULL |
FILE 첨부파일
PK | 첨부파일 번호 | PRIMARY KEY | |
첨부파일 서버 경로 | NOT NULL | ||
FK | 게시물 번호 | FOREIGN KEY | NOT NULL |
REPLY 댓글
PK | 댓글 고유번호 | PRIMARY KEY | |
댓글내용 | NOT NULL | ||
FK | 작성자 | FOREIGN KEY | NOT NULL |
작성일시 | DEFAULT SYSDATE | ||
FK | 게시글 번호 | FOREIGN KEY | NOT NULL |
4. 정규화 2차
(복합식별자가 없어 진행하지 않음)
5. 정규화 3차
MEMBER 유저
PK | 회원 고유번호 | PRIMARY KEY | |
이메일 (ID) | UNIQUE | NOT NULL | |
비밀번호 | NOT NULL | ||
이름 | NOT NULL | ||
닉네임 | UNIQUE | ||
프로필 이미지 | DEFAULT 일반 | ||
권한(일반/점주/관리자) | CHECK | DEFAULT 일반 | |
전화번호 | UNIQUE | NOT NULL | |
FK | 우편번호 | NOT NULL | |
상세주소 | NOT NULL |
ADDRESS 주소
PK | 우편번호 | PRIMARY KEY | |
도로명주소 | NOT NULL |
BOARD 게시글
PK | 게시물 번호 | PRIMARY KEY | |
제목 | NOT NULL | ||
내용 | NOT NULL | ||
FK | 작성자 | FOREIGN KEY | NOT NULL |
작성일시 | DEFAULT SYSDATE | ||
수정일시 | |||
공개여부 | DEFAULT 공개 | ||
좋아요 | DEFAULT 0 | ||
FK | 카테고리 | NOT NULL |
CATEGORY 게시판 종류 문의/일반
PK | 종류 번호 | PRIMARY KEY | |
카테고리 이름 | NOT NULL |
IMAGE 이미지
PK | 이미지 번호 | PRIMARY KEY | |
이미지 서버 경로 | NOT NULL | ||
FK | 게시물 번호 | FOREIGN KEY | NOT NULL |
FILE 첨부파일
PK | 첨부파일 번호 | PRIMARY KEY | |
첨부파일 서버 경로 | NOT NULL | ||
FK | 게시물 번호 | FOREIGN KEY | NOT NULL |
REPLY 댓글
PK | 댓글 고유번호 | PRIMARY KEY | |
댓글내용 | NOT NULL | ||
FK | 작성자 | FOREIGN KEY | NOT NULL |
작성일시 | DEFAULT SYSDATE | ||
FK | 게시글 번호 | FOREIGN KEY | NOT NULL |
12. 구현
(구현 쿼리 대신 erd로 첨부했다)
주소는 나중에 별도 API 사용하게 될 예정이기도 하고 지금 단계에서 필요하지 않은 부분이라 삭제됐다.
첨부파일도 별도로 둘 필요가 없는 부분이라 기능 삭제로 테이블이 빠졌다.
좋아요의 기능확정이 되며(요청사항 반영) 별도의 테이블로 분리 됐다.
(제일 오른쪽은 view로 board정보를 반환할 때 여러가지 정보를 함께 반환하는 경우가 많아 쿼리 간략화 및 가독성을 위해 view를 추가했다)
'Project' 카테고리의 다른 글
[Team/붕어빵원정대(중중프)] 중중프 완료 Model 담당 파트 정리 (0) | 2024.08.30 |
---|---|
[Team/붕어빵원정대(중중프)] CRUD 분석 (0) | 2024.08.25 |
[Team] 알흠 프로젝트 (0) | 2024.08.02 |
[Team] 쇼핑몰 프로그램 만들기 (2) | 2024.07.24 |
[Team] Pokemon 게임 만들기 (0) | 2024.07.11 |