데이터베이스 구조

📊 데이터베이스 구조
이 프로젝트는 총 6개의 주요 테이블로 구성된 관계형 데이터베이스를 사용합니다. 각 테이블은 서로 관계를 가지고 있으며, 프로젝트의 주요 기능인 사용자, 리뷰, 식당 및 메뉴와 관련된 데이터를 저장합니다.
1. users 테이블
컬럼 이름 |
데이터 타입 |
설명 |
id |
int |
고유 사용자 ID (Primary Key) |
username |
varchar(100) |
사용자의 고유 아이디 |
password |
varchar(255) |
해싱된 사용자 비밀번호 |
nickname |
varchar(100) |
사용자 닉네임 |
tag_number |
int |
사용자 태그 번호 |
tag |
varchar(10) |
사용자 태그 이름 |
profile_icon |
varchar(255) |
프로필 아이콘 URL |
created_at |
timestamp |
계정 생성 날짜 |
updated_at |
timestamp |
계정 정보 수정 날짜 |
- 사용자의 로그인 정보 및 프로필 데이터를 관리합니다.
2. restaurants 테이블
컬럼 이름 |
데이터 타입 |
설명 |
id |
int |
고유 식당 ID (Primary Key) |
name |
varchar(255) |
식당 이름 |
address |
text |
식당 주소 |
latitude |
decimal(10,8) |
식당의 위도 정보 |
longitude |
decimal(11,8) |
식당의 경도 정보 |
phone |
varchar(20) |
식당 전화번호 |
hours |
varchar(255) |
운영 시간 정보 |
created_at |
timestamp |
식당 등록 날짜 |
- 설명: 프로젝트의 주요 데이터인 식당 정보를 저장합니다.
3. reviews 테이블
컬럼 이름 |
데이터 타입 |
설명 |
id |
int |
고유 리뷰 ID (Primary Key) |
user_id |
int |
리뷰를 작성한 사용자 ID |
restaurant_id |
int |
리뷰 대상 식당 ID |
content |
text |
리뷰 내용 |
created_at |
timestamp |
리뷰 작성 날짜 |
updated_at |
timestamp |
리뷰 수정 날짜 |
- 설명: 각 사용자와 식당에 연결된 리뷰 데이터를 저장합니다.
- 관계:
user_id
→ users.id
restaurant_id
→ restaurants.id
4. menus 테이블
컬럼 이름 |
데이터 타입 |
설명 |
id |
int |
고유 메뉴 ID (Primary Key) |
restaurant_id |
int |
메뉴가 속한 식당 ID |
name |
varchar(255) |
메뉴 이름 |
price |
decimal(10,2) |
메뉴 가격 |
photo_url |
text |
메뉴 사진 URL |
created_at |
timestamp |
메뉴 등록 날짜 |