Database Naming Convention - dev-team-projects/DeliTalk GitHub Wiki
๐ต ๋ฐฐ๋ฌ ์น์ฌ์ดํธ DB ์ปจ๋ฒค์ ๊ท์น
์ด ๋ฌธ์๋ ๋ฐฐ๋ฌ ์น์ฌ์ดํธ ํ๋ก์ ํธ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ค๊ณ ์ ์ ์ฉ๋ ๋ช ๋ช ๊ท์น ๋ฐ ๊ธฐํ ์ปจ๋ฒค์ ์ ์ ์ํฉ๋๋ค. ์ผ๊ด์ฑ ์๋ ๊ท์น ์ ์ฉ์ ํตํด ํ์ ํจ์จ์ฑ์ ๋์ด๊ณ , ์ ์ง๋ณด์๋ฅผ ์ฝ๊ฒ ํ๊ธฐ ์ํ ์ฝ์์ด๋ผ๊ณ ํฉ๋๋ค.
๐ ๋ช ๋ช ๊ท์น (Naming Conventions)
1. ํ ์ด๋ธ๋ช (Table Names)
- ๊ท์น: ๋ณต์ํ ์ฌ์ฉ, ๋จ์ด ๊ตฌ๋ถ์
_
(์ธ๋๋ฐ) - ์์:
users
restaurants
order_items
์๋๋ ๋ณต์ํ_TB ๋ฅผ ํ ์๊ฐ์ด์๋๋ฐ ์์๋ ๋ง์ด ์ฌ์ฉํ์ง ์๋๋ค๊ณ ํด์ ๋ณ๊ฒฝํ์ต๋๋ค
2. ์ปฌ๋ผ๋ช (Column Names)
- ๊ท์น:
snake_case
์ฌ์ฉ - ๊ธฐ๋ณธ ํค (PK):
[ํ ์ด๋ธ ์ฝ์]_SQ
- ์ธ๋ ํค (FK):
[์ฐธ์กฐ ํ ์ด๋ธ ์ฝ์]_NO
- ์ผ๋ฐ ์ปฌ๋ผ:
[ํ ์ด๋ธ ์ฝ์]_[์ปฌ๋ผ๋ช ]
๐ ํ ์ด๋ธ ์ฝ์ ์ ์
ํ ์ด๋ธ๋ช | ์ฝ์ |
---|---|
Users | MEM |
Restaurants | REST |
Menus | MNU |
Orders | ORD |
OrderItems | ORD_IT |
ChatRooms | CTR |
ChatMessages | CTM |
Administrators | ADM |
Blacklists | BLK |
๐ ์์
users
ํ ์ด๋ธ:MEM_EMAIL
,MEM_PWD
,MEM_NICK
restaurants
ํ ์ด๋ธ:REST_NAME
,REST_ADDR
orders
ํ ์ด๋ธ:ORD_TOTAL_PRICE
,ORD_PAYMENT_STATUS
์ปฌ๋ผ๋ช ํ ์ด๋ธ๋ช ์ฝ์ _ ์๋ฏธ๋ ๊ธธ๋ฉด ์ฝ์๋ก
3. ์ ์ฝ์กฐ๊ฑด๋ช (Constraint Names)
- ๊ท์น:
[์ ์ฝ์กฐ๊ฑด ์ฝ์]_[ํ ์ด๋ธ๋ช ]
ํ์ - ํ์ ๋ฐ ์์:
์ ์ฝ์กฐ๊ฑด ์ข ๋ฅ | ํ์ | ์์ |
---|---|---|
๊ธฐ๋ณธ ํค (PK) | PK_[์ปฌ๋ผ๋ช
] |
PK_MEM_SQ |
์ธ๋ ํค (FK) | FK_[์์ํ
์ด๋ธ๋ช
]_[์ฐธ์กฐ์ปฌ๋ผ๋ช
] |
FK_orders_MEM_NO |
๊ณ ์ ์ ์ฝ์กฐ๊ฑด | UN_[ํ
์ด๋ธ๋ช
]_[์ปฌ๋ผ๋ช
] |
UN_users_MEM_EMAIL |
์ฒดํฌ ์ ์ฝ์กฐ๊ฑด | CHK_[ํ
์ด๋ธ๋ช
]_[์ปฌ๋ผ๋ช
] |
|
CHK_blacklists_MEM_NO_or_REST_NO |
๐ ๋ฐ์ดํฐ ํ์
ํญ๋ชฉ | ๊ท์น ์ค๋ช |
---|---|
๋ฌธ์์ด | VARCHAR โ ์ ์ ํ ๊ธธ์ด ์ง์ |
์ซ์ | INT ๋ฐ์ดํฐ์ ๋ง๋ ํ์
์ฌ์ฉ |
๋ ์ง/์๊ฐ | DATETIME ์ฌ์ฉ |
NULL ํ์ฉ | ๊ธฐ๋ณธ์ ์ผ๋ก NOT NULL , ํ์ฉ ์ ๋ช
ํํ ์ฌ์ ์ฃผ์์ผ๋ก ๋ช
์ |
์ ์์ด์ง ํ์ ์ฌํญ ์๋๋๋ค.