Algorithm
- ๋ฐ์ดํฐ ๋ฒ ์ด์ค Database -
๋ฐ์ดํฐ ๋ฒ ์ด์ค Database
• ๋ฐ์ดํฐ Data
๋ฐ์ดํฐ๋ ์์์ฑ์ ๊ฐ์ง๋ ์ ๋ณด๋จ์๋ก ์ด๋์ ์ ๋ณด๋จ์๋ ๋น์ฆ๋์ค ํ๋ก์ธ์ค์ ๋ฐ๋ผ ์ฃผ๊ด์ ์ธ ์ฑ๊ฒฉ์ ๊ฐ์ง๊ณ ์๋ค.
์๋ฅผ ๋ค๋ฉด, ์ฃผ๋ฏผ๋ฑ๋ก๋ฒํธ๋ฅผ ๋ฐ์ดํฐ๋ก ๋ฐ์์ฌ๋ ๋๊ตฐ๊ฐ๋ ์ฃผ๋ฏผ๋ฑ๋ก๋ฒํธ ์ ์ฒด๋ฅผ ์๊ตฌํ ์๋ ์๊ณ , ๋๊ตฐ๊ฐ๋ ์๋ถ๋ถ์ด๋ ๋ท๋ถ๋ถ๋ง ํ์ํ ์ ์๋ค.
์ด๋ง์ธ ์ฆ, ๋ฌด์์ด ๋ง๊ณ ํ๋ฆฌ๊ณ ๊ฐ ์๋๋ผ ๋น์ฆ๋์ค ํ๋ก์ธ์ค์ ๋ฐ๋ผ์ ์๊ตฌํ๋ ์ ๋ณด๋จ์๋ก ๋ฐ์ดํฐ๋ฅผ ๋ฐ์์ค๋ฉด ๊ทธ ์์ฒด๊ฐ ๋ฐ์ดํฐ๋ฅผ ์๋ฏธํ๋ค๋ ๋ง์ด๋ค.
• ๋ฐ์ดํฐ๋ฒ ์ด์ค Database
๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ๋ฐ์ดํฐ๊ฐ ์ฆ๊ฐํด ์ฐจ๊ณก์ฐจ๊ณก ์์ธ๊ฒ์ ์๋ฏธํ๋ค.
๋ฐ์ดํฐ๊ฐ ์ฆ๊ฐํ๋ฉด ๋ฐ์ดํฐ์ ์๊ตฌ์ฌํญ์ด ์ฆ๊ฐํ๊ฒ ๋๋ค.
์ฆ, ์ฐ๋ฆฌ๋ ์ด๋ฌํ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ํตํด์ ๋ฏธ๋๋ฅผ ์์ธกํ ์ ์์ผ๋ฉฐ, ํํฉ์ ๋ถ์ํ ์๋ ์๋ค.
ํน์ง)
- ์ค์๊ฐ ์ ๊ทผ
- ์ง์์ ๋ณํ
- ๋์๊ณต์ฉ
- ๋ด์ฉ์ ์ํ ์ฐธ์กฐ
- ๋ฐ์ดํฐ ์ฐ๊ณ์ฑ
• DBMS (Data Base Management System)
์ฐ๋ฆฌ๋ ๋ฐ์ดํฐ์ ์์ด ์ฆ๊ฐํ๊ฒ ๋๋ฉด ๋ฏธ๋๋ฅผ ์์ธกํ๊ณ ํํฉ์ ๋ถ์ํ ์ ์๋ ์ฅ์ ๋ ์์ง๋ง ๋ณด๋ค ์ ํํ ๋ถ์์ ์ํด์๋ ๋ฐ์ดํฐ๊ฐ ์ ๋ณด์กด๋์ด ์์ด์ผ ํ๋ค.
๋ํ ๋ฐ์ดํฐ์ ์์ด ๋ฌด์ํ ๋ง์์ง๊ฒ ๋๋ฉด ๊ธฐ์กด์ ๋ถ์ ๋ฐฉ์์์ ์๋ก์ด ๋ถ์๋ฐฉ์๋์ ์ ํ์์ฑ์ ๋๋ผ๊ฒ ๋๋๋ฐ ์ด๋ ๋งค๋ฒ ์๋ก์ด ๋ถ์๋ฐฉ์์ ๋์ ํ๋ ๊ฒ์ด ์๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๊ด๋ จ๋ ์ธ์ด๋ฅผ ์๋ก ๋ง๋ค๊ฒ ๋์๋๋ฐ ์ฐ๋ฆฌ๋ ์ด๋ฅผ DBMS๋ผ๊ณ ํ๋ค.
DBMS๊ฐ ๋ฐ์ดํฐ๋ฅผ ๋ณด๋ ๊ด์ ์ ๋ฐ์ดํฐ๋ฅผ ์ด๋ป๊ฒ ์ ์ ์ฅํ ๊ฒ์ธ๊ฐ, ๋ฐ์ดํฐ๋ฅผ ์ด๋ป๊ฒ ์ ๋ถ์ํ ๊ฒ์ธ๊ฐ ์ด๋ค.
๋ด๊ฐ ์ฌ์ฉํ DBMS๋ Mysql Community์ธ๋ฐ ํ๋์ DBMS๋ก ์ฌ๋ฌ ๊ฐ์ DB๋ฅผ ๊ด๋ฆฌํ ์ ์๋ค.
(DBMS๋ง๋ค ์ด๋ ๋ค๋ฅด๊ฒ ์์ฉ๋ ์ ์๋ค.)
• Table
ํ ์ด๋ธ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์์์ ํ๊ณผ ์ด๋ก ๊ตฌ์ฑ๋์ด ์๋ ์ ๋ณด์ ๋ชจ์์ผ๋ก ํ์ ๊ดํ ์ ๋ณด๋ฅผ ๋ก์ฐ(row)๋ ํํ๋ก ๋ถ๋ฅด๋ฉฐ ์ด์ ๋ณด๋ ์ปฌ๋ผ์ด๋ ์ดํธ๋ฆฌ๋ทฐํธ ๊ทธ๋ฆฌ๊ณ ํ๋๋ก ๋ถ๋ฅธ๋ค.
• ์คํค๋ง schema
- schema : ๋ฐ์ดํฐ๋ฒ ์ด์ค์์ ์๋ฃ์ ๊ตฌ์กฐ, ํํ ๋ฐฉ๋ฒ, ์๋ฃ ๊ฐ์ ๊ด๊ณ๋ฅผ ํ์ ์ธ์ด๋ก ์ ์ํ ๊ตฌ์กฐ
- Meta Data : ๋ฐ์ดํฐ๋ฅผ ํํํ๋ ๋ฐ์ดํฐ๋ก, ๋ค๋ฅธ ๋ฐ์ดํฐ๋ฅผ ์ค๋ช ํ๋ ๋ฐ์ดํฐ๋ฅผ ์๋ฏธ
• ๋ฐ์ดํฐ ํ์
๋ฌธ์ ๋ฐ์ดํฐํ์ ์์ char๋ ๊ณ ์ ๋์ด ์๋ ์ฌ์ด์ฆ๋ก ์ค์ ํ ๊ฐ๋ณด๋ค ์์ ๊ฐ์ ์ ๋ ฅํด๋ ์ค์ ํ ๊ฐ์ผ๋ก ๋ด๋ณด๋ด๋ฉฐ, ์ฌ์ด์ฆ๋ฅผ ๊ณ ๋ คํ์ง ์๊ธฐ๋๋ฌธ์ ์ ๊ทผ์๋๊ฐ ๋น ๋ฅด๋ค.
๋ฐ๋ฉด varchar๋ ์ค์ ๊ฐ๋ณด๋ค ์ ๊ฒ ์ ๋ ฅํ ๊ฒฝ์ฐ ๊ฐ์ ํ์ ํ๊ธฐ ๋๋ฌธ์ ์ฌ์ด์ฆ๋ฅผ ๊ณ ๋ คํ๋๋ผ ์ ๊ทผ์๋๊ฐ ๋๋ฆฌ๋ค.
๋ฐ์ดํฐํ์ ์ด ๋ค์ํ ์ด์
- ๋ฐ์ดํฐํ์ ์ ์ข ๋ฅ๊ฐ ๋ค์ํ ์ด์ ๋ ์ธ๊ฐ์ด ์ฌ์ฉํ๋ ๋ชจ๋ ๋ฐ์ดํฐ๋ฅผ ํํํด์ผํ๊ธฐ ๋๋ฌธ์ด๋ค.
- ๋ฐ์ดํฐํ์ ์ ์ ์ ํ๋๋ฐ ๋น๊ต์ ๋ฏผ๊ฐํ๋ฐ ์ด์ ๋ ๋ฐ์ดํฐ ์์ด ๋ง์์ง์๋ก ๋ฐ์ดํฐํ์ ์ ์๋ชป์ค์ ํ๋ฉด ๋ญ๋น๊ฐ ๋ฐ์๋ ์ฐ๋ ค๊ฐ ์๊ธฐ ๋๋ฌธ์ด๋ค.
• ์ ์ฝ์กฐ๊ฑด
- ํ ์ด๋ธ ๋ฐ ๋ฐ์ดํฐ์ ๋ฌด๊ฒฐ์ฑ์ ๋ณด์ฅํ๊ธฐ ์ํด ๊ฐ์ฒด ์ธ์คํด์ค์ ๋ํ ๋ ผ๋ฆฌ์ ์ผ๋ก ๋ช ์ธํ ์กฐ๊ฑด
- ๋ฐ์ดํฐ์ ๊ตฌ์กฐ์ ์ ์ฝ๊ณผ ์ค์ ๊ฐ์ ๋ํ ์ ์ฝ
- ์ ์ฝ์กฐ๊ฑด์ ์ข ๋ฅ)
• ๋๋ฉ์ธ ๋ฌด๊ฒฐ์ฑ : ์ค์ ๊ฐ(ํ๋์งํฉ)์ ๋ํ ์ ์ฝ → Datatype, NN
• ๊ฐ์ฒด ๋ฌด๊ฒฐ์ฑ : ๊ธฐ๋ณธํค๋ฅผ ์ค์ , ๊ทธ๊ฒ์ ๋ํด NULLํ์ฉ ์ํจ → PK, NN
• ์ฐธ์กฐ ๋ฌด๊ฒฐ์ฑ : ์ฐธ์กฐํ ์ ์๋ ์ธ๋ํค๋ฅผ ๊ฐ์ง ์ ์๋ค. → NN
NN : NOT NULL์ ์๋ฏธ๋ก ๋น์ด์๋ค๋ ์๋ฏธ์ NULL์ด ์กด์ฌํ๋ฉด ์๋๋ค.
PK : Primary Key๋ก ๊ธฐ๋ณธํค๋ฅผ ์๋ฏธํ๋ฉฐ, ํ ์ด๋ธ์ ๋ํ ๊ธฐ์ค์ด ๋๋ ํค์ด๋ค.
UQ : Unique์ ์๋ฏธ๋ก ๊ณ ์ ํ ๊ฐ์ ๊ฐ์ง๊ณ ์๋ ๊ณ ์ ํค๋ผ๊ณ ํ๋ค.
AI : Auto Increment๋ก ์๋์ผ๋ก ๊ฐ์ด ์ฆ๊ฐํ๋ฉด์ ์ ๋ ฅ๋๋ค.
'์๋ > ๊ตญ๋น์ง์' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[D+30] DB ์ธ๋ํค, ๊ทธ๋ฃนํ, DB๊ฐ๋ (1) | 2022.11.03 |
---|---|
[D+29] DB ํ ์ด๋ธ ์์ฑ ๋ฐ ๋ฐ์ดํฐ ์ถ๊ฐ/์ญ์ , ์กฐํ, ์๋ธ์ฟผ๋ฆฌ (0) | 2022.11.02 |
[D+27] ์ฝ๋ฉ ๋ฐ์ด (0) | 2022.10.30 |
[D+26] ์์ฉSW ๊ธฐ์ด ๊ธฐ์ ํ์ฉ (0) | 2022.10.27 |
[D+25] ๊ธฐ๋ณธ API (0) | 2022.10.26 |
๋๊ธ