-
Notifications
You must be signed in to change notification settings - Fork 3
DB ์ค๊ณ
MinJun Choi edited this page Nov 2, 2021
·
11 revisions
- ERD ์ด๋ฏธ์ง
- ERD ๋ฌธ์ ๋ค์ด๋ก๋
- prisma (MySQL)

| ์นผ๋ผ | ํ์ | ์ต์ | ์ค๋ช |
|---|---|---|---|
| id | INT | PK | ์ฌ์ฉ์์ ๊ณ ์ ID |
| VARCHAR(30) | NOT NULL, Unique | ์ฌ์ฉ์์ ์ด๋ฉ์ผ | |
| password | VARCHAR(200) | NOT NULL, Unique | ์ฌ์ฉ์์ ๋น๋ฐ๋ฒํธ(์ํธํ) |
| createdAt | DATETIME(3) | ๊ฐ์ ๋ ์ง | |
| updatedAt | DATETIME(3) | ์์ ๋ ์ง | |
| provider | VARCHAR(191) | OAuth ์ ๋ณด |
| ์นผ๋ผ | ํ์ | ์ต์ | ์ค๋ช |
|---|---|---|---|
| id | INT | PK | auth ๊ณ ์ ID |
| VARCHAR(30) | ์ฌ์ฉ์์ ์ด๋ฉ์ผ | ||
| auth | VARCHAR(191) | ์ธ์ฆ ๋ฒํธ | |
| createdAt | DATETIME(3) | ์์ฑ ๋ ์ง | |
| updatedAt | DATETIME(3) | ์์ ๋ ์ง |
- user Table ๊ณผ 1:1 ๊ด๊ณ
| ์นผ๋ผ | ํ์ | ์ต์ | ์ค๋ช |
|---|---|---|---|
| id | INT | PK | ํ๋กํ ๊ณ ์ ID |
| department | VARCHAR(50) | ์ฌ์ฉ์์ ์์ | |
| introduce | TEXT | ์๊ธฐ ์๊ฐ | |
| createdAt | DATETIME(3) | ์์ฑ ๋ ์ง | |
| updatedAt | DATETIME(3) | ์์ ๋ ์ง | |
| userId | INT | FORIGNKEY | ์ฌ์ฉ์์ id๋ฅผ ์ฐธ์กฐํ๋ ์ธ๋ํค |
| profileImage | TEXT | ํ๋กํ ์ด๋ฏธ์ง๋ฅผ ์ ์ฅํ ์ฃผ์ |
- profile Table ๊ณผ 1:n ๊ด๊ณ
| ์นผ๋ผ | ํ์ | ์ต์ | ์ค๋ช |
|---|---|---|---|
| id | INT | PK | ์ํ๋ ์ฌ๋ฅ ๊ณ ์ ID |
| contents | VARCHAR(191) | ์ํ๋ ์ฌ๋ฅ | |
| profileId | INT | FOREIGN | ํ๋กํ์ ์ฐธ์กฐํ๋ ์ธ๋ํค |
| createdAt | DATETIME(3) | ์์ฑ ๋ ์ง | |
| updatedAt | DATETIME(3) | ์์ ๋ ์ง |
- profile Table ๊ณผ 1:n ๊ด๊ณ
| ์นผ๋ผ | ํ์ | ์ต์ | ์ค๋ช |
|---|---|---|---|
| id | INT | PK | ๊ด์ฌ ์ฌ๋ฅ ๊ณ ์ ID |
| contents | VARCHAR(191) | ๊ด์ฌ ์ฌ๋ฅ | |
| profileId | INT | FOREIGN | ํ๋กํ์ ์ฐธ์กฐํ๋ ์ธ๋ํค |
| createdAt | DATETIME(3) | ์์ฑ ๋ ์ง | |
| updatedAt | DATETIME(3) | ์์ ๋ ์ง |
- primary key : followKey = [followerId,followingId]
| ์นผ๋ผ | ํ์ | ์ต์ | ์ค๋ช |
|---|---|---|---|
| followerId | INT | FOREIGN | ์ฐธ์กฐํ๋ ํ๋ก์ user ID |
| followingId | INT | FOREIGN | ์ฐธ์กฐํ๋ ํ๋ก์ user ID |
| createdAt | DATETIME(3) | ์์ฑ ๋ ์ง | |
| updatedAt | DATETIME(3) | ์์ ๋ ์ง |
| ์นผ๋ผ | ํ์ | ์ต์ | ์ค๋ช |
|---|---|---|---|
| id | INT | PK | ์ฑ๋ ๊ณ ์ ID |
| name | VARCHAR(191) | ์ฑ๋์ด๋ฆ | |
| introduce | TEXT | ์ฑ๋ ์๊ฐ | |
| createdAt | DATETIME(3) | ์์ฑ ๋ ์ง | |
| updatedAt | DATETIME(3) | ์์ ๋ ์ง | |
| adminId | INT | FORIGNKEY | ์ฌ์ฉ์์ id๋ฅผ ์ฐธ์กฐํ๋ ์ธ๋ํค |
| channelImage | TEXT | ์ฑ๋ ์ด๋ฏธ์ง๋ฅผ ์ ์ฅํ ์ฃผ์ |
| ์นผ๋ผ | ํ์ | ์ต์ | ์ค๋ช |
|---|---|---|---|
| id | INT | PK | ํ๊ทธ ๊ณ ์ ID |
| name | VARCHAR(191) | ํ๊ทธ ์ด๋ฆ | |
| introduce | TEXT | ํ๊ทธ ์๊ฐ | |
| createdAt | DATETIME(3) | ์์ฑ ๋ ์ง | |
| updatedAt | DATETIME(3) | ์์ ๋ ์ง |
| ์นผ๋ผ | ํ์ | ์ต์ | ์ค๋ช |
|---|---|---|---|
| channelId | INT | FOREIGN | ์ฐธ์กฐํ๋ ์ฑ๋ ID |
| tagId | INT | FOREIGN | ์ฐธ์กฐํ๋ ํ๊ทธ ID |
| createdAt | DATETIME(3) | ์์ฑ ๋ ์ง | |
| updatedAt | DATETIME(3) | ์์ ๋ ์ง |
| ์นผ๋ผ | ํ์ | ์ต์ | ์ค๋ช |
|---|---|---|---|
| userId | INT | FOREIGN | ์ฐธ์กฐํ๋ ์ฌ์ฉ์ ID |
| channelId | INT | FOREIGN | ์ฐธ์กฐํ๋ ์ฑ๋ ID |
| createdAt | DATETIME(3) | ์์ฑ ๋ ์ง | |
| updatedAt | DATETIME(3) | ์์ ๋ ์ง |
| ์นผ๋ผ | ํ์ | ์ต์ | ์ค๋ช |
|---|---|---|---|
| userId | INT | FOREIGN | ์ฐธ์กฐํ๋ ์ฌ์ฉ์ ID |
| channelId | INT | FOREIGN | ์ฐธ์กฐํ๋ ์ฑ๋ ID |
| ์นผ๋ผ | ํ์ | ์ต์ | ์ค๋ช |
|---|---|---|---|
| userId | INT | FOREIGN | ์ฐธ์กฐํ๋ ์ฌ์ฉ์ ID |
| channelId | INT | FOREIGN | ์ฐธ์กฐํ๋ ์ฑ๋ ID |
| createdAt | DATETIME(3) | ์์ฑ ๋ ์ง | |
| updatedAt | DATETIME(3) | ์์ ๋ ์ง |
| ์นผ๋ผ | ํ์ | ์ต์ | ์ค๋ช |
|---|---|---|---|
| id | INT | PK | ํฌ์คํธ ๊ณ ์ ID |
| title | VARCHAR(191) | ํฌ์คใ ก์ ๋ชฉ | |
| status | ENUM | [Notice,Open,Reservation,Close,Clear,Archived] ์ค ๊ฐ๋ฅ | |
| content | TEXT | ํฌ์คํธ ๋ด์ฉ | |
| createdAt | DATETIME(3) | ์์ฑ ๋ ์ง | |
| updatedAt | DATETIME(3) | ์์ ๋ ์ง | |
| reservedAt | DATETIME(3) | ์ฌ๋ฅ ๊ณต์ ์์ฝ ์๊ฐ ์ค์ | |
| adminId | INT | FORIGNKEY | ์ฌ์ฉ์์ id๋ฅผ ์ฐธ์กฐํ๋ ์ธ๋ํค |
| channelId | INT | FORIGNKEY | ์ฑ๋์ id๋ฅผ ์ฐธ์กฐํ๋ ์ธ๋ํค |
| ์นผ๋ผ | ํ์ | ์ต์ | ์ค๋ช |
|---|---|---|---|
| id | INT | PK | ๋๊ธ ๊ณ ์ ID |
| content | TEXT | ๋๊ธ ๋ด์ฉ | |
| authorId | INT | FORIGNKEY | ์ฌ์ฉ์์ id๋ฅผ ์ฐธ์กฐํ๋ ์ธ๋ํค |
| postId | INT | FORIGNKEY | ๊ฒ์๊ธ์ ๋๊ธ์ผ ๊ฒฝ์ฐ, ํฌ์คํธ์ id๋ฅผ ์ฐธ์กฐํ๋ ์ธ๋ํค |
| archiveId | INT | FORIGNKEY | ์์นด์ด๋ธ ๋๊ธ์ผ ๊ฒฝ์ฐ, ์์นด์ด๋ธ์ id๋ฅผ ์ฐธ์กฐํ๋ ์ธ๋ํค |
| createdAt | DATETIME(3) | ์์ฑ ๋ ์ง | |
| updatedAt | DATETIME(3) | ์์ ๋ ์ง |
| ์นผ๋ผ | ํ์ | ์ต์ | ์ค๋ช |
|---|---|---|---|
| userId | INT | FOREIGN | ์ฐธ์กฐํ๋ ์ฌ์ฉ์ ID |
| postId | INT | FOREIGN | ์ฐธ์กฐํ๋ ํฌ์คํธ ID |
| createdAt | DATETIME(3) | ์์ฑ ๋ ์ง | |
| updatedAt | DATETIME(3) | ์์ ๋ ์ง |
| ์นผ๋ผ | ํ์ | ์ต์ | ์ค๋ช |
|---|---|---|---|
| id | INT | PK | ์ฑ๋ ๋ฃธ ๊ณ ์ ID |
| status | ENUM | [Open,Reservation,Close,Archived] ์ค ๊ฐ๋ฅ | |
| name | VARCHAR(191) | NOT NULL | ์ฑ๋๋ฃธ์ ๋ชฉ |
| createdAt | DATETIME(3) | ์์ฑ ๋ ์ง | |
| updatedAt | DATETIME(3) | ์์ ๋ ์ง | |
| reservedAt | DATETIME(3) | ์ฌ๋ฅ ๊ณต์ ์์ฝ ์๊ฐ ์ค์ | |
| userId | INT | FORIGNKEY | ์ฌ์ฉ์์ id๋ฅผ ์ฐธ์กฐํ๋ ์ธ๋ํค |
| channelId | INT | FORIGNKEY | ์ฑ๋์ id๋ฅผ ์ฐธ์กฐํ๋ ์ธ๋ํค |
| postId | INT | FORIGNKEY | ํฌ์คํธ์ id๋ฅผ ์ฐธ์กฐํ๋ ์ธ๋ํค |
| ์นผ๋ผ | ํ์ | ์ต์ | ์ค๋ช |
|---|---|---|---|
| userId | INT | FOREIGN | ์ฐธ์กฐํ๋ ์ฌ์ฉ์ ID |
| channelId | INT | FOREIGN | ์ฐธ์กฐํ๋ ์ฑ๋ ID |
| status | VARCHAR(191) | ์ฐธ์ฌ์์ ์ํ |
| ์นผ๋ผ | ํ์ | ์ต์ | ์ค๋ช |
|---|---|---|---|
| id | INT | PK | ์ฑํ ๊ณ ์ ID |
| status | VARCHAR(191) | ๋ฆฌ๋ทฐ ์ํ | |
| content | TEXT | ์ฑํ ๋ด์ฉ | |
| sendUserId | INT | FORIGNKEY | ์ฌ์ฉ์์ id๋ฅผ ์ฐธ์กฐํ๋ ์ธ๋ํค |
| answerdId | INT | FORIGNKEY | ๋ต์ฅ ์ฑํ ์ id๋ฅผ ์ฐธ์กฐํ๋ ์ธ๋ํค |
| channelRoomId | INT | FORIGNKEY | ์ฑ๋ ๋ฃธ์ id๋ฅผ ์ฐธ์กฐํ๋ ์ธ๋ํค |
| channelId | INT | FORIGNKEY | ์ฑ๋์ id๋ฅผ ์ฐธ์กฐํ๋ ์ธ๋ํค |
| createdAt | DATETIME(3) | ์์ฑ ๋ ์ง | |
| updatedAt | DATETIME(3) | ์์ ๋ ์ง |
| ์นผ๋ผ | ํ์ | ์ต์ | ์ค๋ช |
|---|---|---|---|
| id | INT | PK | ๋ฆฌ๋ทฐ ๊ณ ์ ID |
| content | TEXT | ๋ฆฌ๋ทฐ ๋ด์ฉ | |
| reviewedUserId | INT | FORIGNKEY | ๋ฆฌ๋ทฐ๋ฐ๋ ์ฌ์ฉ์์ id๋ฅผ ์ฐธ์กฐํ๋ ์ธ๋ํค |
| reviewerId | INT | FORIGNKEY | ๋ฆฌ๋ทฐํ๋ ์ฌ์ฉ์์ id๋ฅผ ์ฐธ์กฐํ๋ ์ธ๋ํค |
| channelId | INT | FORIGNKEY | ์ฑ๋์ id๋ฅผ ์ฐธ์กฐํ๋ ์ธ๋ํค |
| createdAt | DATETIME(3) | ์์ฑ ๋ ์ง | |
| updatedAt | DATETIME(3) | ์์ ๋ ์ง |
| ์นผ๋ผ | ํ์ | ์ต์ | ์ค๋ช |
|---|---|---|---|
| id | INT | PK | ์์นด์ด๋ธ ๊ณ ์ ID |
| title | VARCHAR(191) | ์์นด์ด๋ธ ์ ๋ชฉ | |
| status | ENUM | [Private,Public] ์ค ๊ฐ๋ฅ | |
| content | TEXT | ํฌ์คํธ ๋ด์ฉ | |
| createdAt | DATETIME(3) | ์์ฑ ๋ ์ง | |
| updatedAt | DATETIME(3) | ์์ ๋ ์ง | |
| ownerId | INT | FORIGNKEY | ์์ ์์ id๋ฅผ ์ฐธ์กฐํ๋ ์ธ๋ํค |
| channelId | INT | FORIGNKEY | ์ฑ๋์ id๋ฅผ ์ฐธ์กฐํ๋ ์ธ๋ํค |
| postId | INT | FORIGNKEY | ํฌ์คํธ์ id๋ฅผ ์ฐธ์กฐํ๋ ์ธ๋ํค |
| ์นผ๋ผ | ํ์ | ์ต์ | ์ค๋ช |
|---|---|---|---|
| archivedId | INT | FOREIGN | ์ฐธ์กฐํ๋ ์์นด์ด๋ธ ID |
| tagId | INT | FOREIGN | ์ฐธ์กฐํ๋ ํ๊ทธ ID |
| createdAt | DATETIME(3) | ์์ฑ ๋ ์ง | |
| updatedAt | DATETIME(3) | ์์ ๋ ์ง |
| ์นผ๋ผ | ํ์ | ์ต์ | ์ค๋ช |
|---|---|---|---|
| userId | INT | FOREIGN | ์ฐธ์กฐํ๋ ์ฌ์ฉ์ ID |
| archiveId | INT | FOREIGN | ์ฐธ์กฐํ๋ ์์นด์ด๋ธ ID |
| createdAt | DATETIME(3) | ์์ฑ ๋ ์ง | |
| updatedAt | DATETIME(3) | ์์ ๋ ์ง |
| ์นผ๋ผ | ํ์ | ์ต์ | ์ค๋ช |
|---|---|---|---|
| id | INT | PK | ์ด๋ฏธ์ง ๊ณ ์ ID |
| src | TEXT | ์ด๋ฏธ์ง ์ ์ฅ ๊ฒฝ๋ก | |
| postId | INT | FORIGNKEY | ํฌ์คํธ์ id๋ฅผ ์ฐธ์กฐํ๋ ์ธ๋ํค |
| archiveId | INT | FORIGNKEY | ์์นด์ด๋ธ id๋ฅผ ์ฐธ์กฐํ๋ ์ธ๋ํค |
| createdAt | DATETIME(3) | ์์ฑ ๋ ์ง | |
| updatedAt | DATETIME(3) | ์์ ๋ ์ง |