โ 1. ๊ด๊ณํ ๋ชจ๋ธ
(1) ๊ด๊ณํ ๋ฐ์ดํฐ ๋ชจ๋ธ

- ๊ด๊ณํ ๋ฐ์ดํฐ ๋ชจ๋ธ์ ์ค์ธ๊ณ ์ ๋ณด๋ฅผ 2์ฐจ์ ํ ์ด๋ธ("๋ฆด๋ ์ด์ ") ํ์์ผ๋ก ํํํ๊ณ ๊ตฌํํ ๊ฒ์.
- ํ ์ด๋ธ์ ์ด์ฉํ์ฌ ๋ฐ์ดํฐ์ ๋ฐ์ดํฐ์ ๊ด๊ณ๋ฅผ ํํํ๋ฉฐ, ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ 2์ฐจ์ ํ ์ด๋ธ์ ์งํฉ์ผ๋ก ๊ฐ์ฃผํจ.
- ์ค์ ๋ฐ์ดํฐ๊ฐ ํ ์ด๋ธ ํํ๋ก ์ ์ฅ๋๋ ๊ฒ์ ์๋ฏธํ์ง ์์. ( ๋ ผ๋ฆฌ์ ์ผ๋ก ํํํ์ฌ, ์ง๊ด์ ์ผ๋ก ์ดํดํ๊ธฐ ์ฝ๊ฒ ํํ )
- ์ฆ, ๋ ผ๋ฆฌ์ ํํ์ ๋ถ๊ณผํ๋ฉฐ, DB ๋ด๋ถ์์๋ ํ ์ด๋ธ์ด ์๋ ๋์คํฌ ๋ธ๋ก, ํ์ด์ง, B+ํธ๋ฆฌ, ํด์ ๊ตฌ์กฐ ๋ฑ์ผ๋ก ์ ์ฅ๋จ.
(2) ๊ด๊ณํ ๋ชจ๋ธ๊ณผ ๊ด๋ จ๋ ์ฉ์ด

- ๋ฆด๋ ์ด์ : ๊ด๊ณํ ๋ฐ์ดํฐ ๋ชจ๋ธ์์ ํ ์ด๋ธ์ ์๋ฏธํจ.
- ํฌํ: ํ ํ์ ์๋ฏธํจ.
- ์นด๋๋๋ฆฌํฐ (ํ์ ์ด ํฉ): ํ ๋ฆด๋ ์ด์ (ํ ์ด๋ธ) ํ์ ์๋ฅผ ์๋ฏธํจ. ( ํฌํ์ ๊ฐ์๋ฅผ ์๋ฏธํจ )
- ์ฐจ์(์ด์ ์ด ํฉ): ํ ๋ฆด๋ ์ด์ (ํ ์ด๋ธ) ์ด์ ์๋ฅผ ์๋ฏธํจ.
- ๋๋ฉ์ธ: ์์ฑ์ด ๊ฐ์ง ์ ์๋ ๋ชจ๋ ๊ฐ์ ์งํฉ์ด๋ฉฐ, ๋ฐ์ดํฐ์ ํ์ฉ ๋ฒ์๋ฅผ ์๋ฏธํจ. ( ํ๋ฒ(INT), ์ด๋ฆ(VARCHAR2) )
- ๋ฆด๋ ์ด์ ์คํค๋ง: ๋ฆด๋ ์ด์ ์ด๋ฆ๊ณผ ์์ฑ๋ค์ ๋ ผ๋ฆฌ์ ์ผ๋ก ๋ํ๋ธ๊ฒ์ ์๋ฏธํจ.
- ๋ฆด๋ ์ด์ ์ธ์คํด์ค: ์ด๋ ์์ ์ ํํ๋ค์ ์งํฉ์ ์๋ฏธํจ. ์กฐํํ์ ๋ ํด๋น ํํ๋ค์ธ๋ฏ,...
(3) ๋ฆด๋ ์ด์ - ๊ฐ๋
- DB๋ ์ฌ๋ฌ ๊ฐ์ ๋ฆด๋ ์ด์ (ํ ์ด๋ธ)์ผ๋ก ๊ตฌ์ฑ์ด ๋จ.
- ๋ฆด๋ ์ด์ ์ด ๊ฐ์ง ์ ์๋ ๋ชจ๋ ์์ฑ๊ฐ์ ๋ชจ๋ ๊ฒฝ์ฐ์ ์์ ๋ํ ๋ถ๋ถ์งํฉ. ( ์นดํ ์์ ๊ณฑ์ ๋ถ๋ถ์งํฉ )
- ๋ฆด๋ ์ด์ = ๋ฆด๋ ์ด์ ์คํค๋ง + ๋ฆด๋ ์ด์ ์ธ์คํด์ค
[ ๋ฆด๋ ์ด์ ์คํค๋ง ]
ํ์(์ด๋ฆ: VARCHAR, ํ๋ฒ: INT, ํ๊ณผ: VARCHAR)
- ๋ฆด๋ ์ด์ ์ ๋ ผ๋ฆฌ์ ๊ตฌ์กฐ์ด๋ฉฐ, ๋ฆด๋ ์ด์ ์ด๋ฆ๊ณผ ์์ฑ์ผ๋ก ๊ตฌ์ฑ์ด ๋์ด ์์.
- ์๊ฐ์ ๋ฌด๊ดํ๋ฉฐ ๋จ์ง ์์ฑ์ ๋ํ ํ์ ์ง์ ( ๊ฒฐ๊ตญ ๋ฆด๋ ์ด์ ์คํค๋ง = ํ ์ด๋ธ ๊ป๋ฐ๊ธฐ๋ก ๋ณผ ์ ์์ )
- ์ฆ, ๋ฆด๋ ์ด์ ์ ๊ตฌ์กฐ์ ์ธ ์ ์๋ฅผ ์๋ฏธํ๋ฉฐ, ์ด๋ค ์์ฑ์ด ์๋์ง, ์ด๋ฆ์ด ๋ฌด์์ธ์ง, ๋ฐ์ดํฐ ํ์ ์ ์ด๋ค ๊ฒ์ธ์ง ๋ฑ์ ์ ์ํจ.
- ์ ๋ฆฌํ๋ฉด, ๋ฆด๋ ์ด์ ์คํค๋ง๋ ํ ์ด๋ธ์ด ์ด๋ค ๊ตฌ์กฐ๋ก ๋์ด ์๋์ง๋ง ์ ์ํด ๋์ "ํ" ์.
[ ๋ฆด๋ ์ด์ ์ธ์คํด์ค ]
- ์ด๋ ํ ์์ ์ ๋ฆด๋ ์ด์ ์ด ๊ฐ์ง๊ณ ์๋ ํฌํ์ ์งํฉ
- ์ฝ์ , ์ญ์ , ๊ฐฑ์ ๋ฑ์ ํตํด ์๊ฐ์ ๋ฐ๋ผ ๋ณํ๋ ๋ฆด๋ ์ด์ ์ ๊ฐ์ ์๋ฏธํจ.
- ์ฆ, ์ค์ ํ ์ด๋ธ์ ์ ์ฅ๋ ๋ฐ์ดํฐ(ํ, ํฌํ) ๋ค์ ์งํฉ์. ( ์ค์ ๋ค์ด๊ฐ ๋ฐ์ดํฐ๋ค์ ์งํฉ์ ๋ฆด๋ ์ด์ ์ธ์คํด์ค๋ผํจ )
(4) ๋ฆด๋ ์ด์ - ํน์ง
- ๋ฆด๋ ์ด์ (ํ ์ด๋ธ) ์ ์ฌ๋ฌ ํฌํ(ํ)์ผ๋ก ์ด๋ฃจ์ด์ง ์งํฉ์ด๋ฉฐ, 4๊ฐ์ง ํน์ง์ ๊ฐ์ง๊ณ ์๋ค.
- ( ํฌํ์ ์ ์ผ์ฑ, ํฌํ์ ๋ฌด์์์ฑ, ์์ฑ์ ๋ฌด์์์ฑ, ์์ฑ๊ฐ์ ์์์ฑ )
- ์งํฉ์ ๊ธฐ๋ณธ์ ์ผ๋ก ์ค๋ณต์ด ์๊ณ , ์์๋ ์๋ ํน์ง์ด ์๋๋ฐ, ๋ฆด๋ ์ด์ ๋ ์ด๋ฐ ์ฑ์ง์ ๊ทธ๋๋ก ๋ฐ๋ฆ.
[ ํฌํ์ ์ ์ผ์ฑ ]
- ํ๋์ ๋ฆด๋ ์ด์ ์๋ ์ค๋ณต๋ ํฌํ์ด ์์ ํฌํ์ ์ ์ผํ ์๋ณ์ด ๊ฐ๋ฅํจ.
- ์ฆ, ๊ฐ ํ์ ์ ์ผํด์ผ ํ๋ค๋ ์๋ฏธ์ด๋ฉฐ, ์ด๊ฑธ ๋ณด์ฅํ๊ธฐ ์ํด ๊ธฐ๋ณธํค(Primary Key) ๊ฐ ํ์ํจ.
[ ํฌํ์ ๋ฌด์์์ฑ ]

- ํ ๋ฆด๋ ์ด์ ์ ํฌํจ๋ ํฌํ๋ค์ ์์๋ฅผ ๊ฐ์ง๊ณ ์์ง ์์
- ์ฆ, ํ ์ด๋ธ์์ ํ์ ์์๋ ์์๊ฐ ๋ฐ๋์ด๋ ์๋ฏธ๋ ๋์ผํ๋ค๋ ๋ป์.
[ ์์ฑ์ ๋ฌด์์์ฑ ]

- ํ๋์ ๋ฆด๋ ์ด์ ์ ๊ตฌ์ฑํ๋ ์์ฑ๋ค ์ฌ์ด์๋ ์์๊ฐ ์์.
- ์ฆ, ์ปฌ๋ผ ์์๊ฐ ๋ฌ๋ผ๋ ๊ฐ์ ์๋ฏธ๋ผ๋ ๋ป์.
- ๊ฒฐ๊ตญ ๋ฐ์ดํฐ์ ๋ ผ๋ฆฌ์ ์๋ฏธ๊ฐ ๊ฐ๋ค๋ฉด, ์ปฌ๋ผ ์์๊ฐ ๋ฌ๋ผ๋ ๋ฌธ์ ๊ฐ ์์
[ ์์ฑ๊ฐ์ ์์์ฑ ]

- ๋ชจ๋ ์์ฑ์ ๊ฐ์ ๋ ์ด์ ๋ถํด๊ฐ ๋ถ๊ฐ๋ฅํ ํ๋์ ๊ฐ์ธ ์์๊ฐ์ ๊ฐ์ง.
- ์ฆ, ํ๋์ ์ ์๋ ํ๋์ ๊ฐ๋ง ๋ค์ด๊ฐ์ผ ํจ์ ๋ปํจ. ( ์ฌ๋ฌ๊ฐ๊ฐ ์์ผ๋ฉด ์์์ฑ ์ด๋ผ๋ ํน์ง์ ํด์นจ )
(5) ํค(Key)
- ๋ฆด๋ ์ด์ (ํ ์ด๋ธ) ์์์ ํฌํ(๊ฐ ํ)์ ๊ตฌ๋ถํ๊ธฐ ์ํ ๊ธฐ์ค(์๋ณ์) ๊ฐ ํค(Key)์ด๋ค.
- ํค์ ํน์ฑ์ ๋ง์กฑํ๋ ค๋ฉด, ์ ์ผ์ฑ๊ณผ ์ต์์ฑ์ ๋ง์กฑํด์ผ๋ง ํ๋ค.
- ์ ์ผ์ฑ: ํค ๊ฐ์ด ๊ฐ ํ์ ์ ์ผํ๊ฒ ์๋ณํ ์ ์์ด์ผ ํ๋ค. ( unique )
- ์ต์์ฑ: ํค๋ ํฌํ์ ์ ์ผํ๊ฒ ์๋ณํ ์ ์๋ ์ต์ํ์ ์์ฑ๋ค๋ก๋ง ๊ตฌ์ฑ๋์ด์ผ ํ๋ค. ( ๋ถํ์ํ ์ปฌ๋ผ์ด ์์ด๋ฉด ์๋๋ค๋ ๋ป )
- ์ฝ๊ฒ๋งํด, ํ๋์ ์ปฌ๋ผ๋ง์ผ๋ก ํค ๊ฐ์ ์ด์ฉํด์ผํ๋ฉฐ, ๋ถํ์ํ ์ปฌ๋ผ์ด ์์ด๋ฉด ์๋๋ค๋ ์๋ฏธ์.
(6) ํค(Key) ์ ์ข ๋ฅ
- ์ํผํค: ์ ์ผ์ฑ์ ๋ง์กฑํ๋ ์์ฑ ๋๋ ์์ฑ์ ์งํฉ
- ํ๋ณดํค: ์ํผํค ์ค์์ ์ต์์ฑ๊น์ง ๋ง์กฑํ๋ ๊ฒ
- ๊ธฐ๋ณธํค: ํ๋ณดํค ์ค์์ ๊ธฐ๋ณธ์ ์ผ๋ก ์ฌ์ฉํ ํค๋ก ์ ํ ๋ ๊ฒ์ ์๋ฏธํจ.
- ๋์ฒดํค: ํ๋ณดํค ์ค์์ ๊ธฐ๋ณธํค๋ก ์ ํ๋์ง ์์ ๊ฒ์ ์๋ฏธํจ.
- ์ธ๋ํค: ๋ค๋ฅธ ๋ฆด๋ ์ด์ ์ ๊ธฐ๋ณธํค๋ฅผ ๊ทธ๋๋ก ์ฐธ์กฐํ๋ ์์ฑ ๋๋ ์์ฑ์ ์งํฉ์ ์๋ฏธํจ.
- ( ์ํธ ๊ด๋ จ ์๋ ๋ฆด๋ ์ด์ ์ฌ์ด์์ ๋ฐ์ดํฐ ์ผ๊ด์ฑ์ ์ ์งํ๋ ์๋จ์ )
(7) ์ ์ฝ ์กฐ๊ฑด
- ์ ์ฝ ์กฐ๊ฑด์ ๋ชจ๋ ๋ฆด๋ ์ด์ ์ธ์คํด์ค๊ฐ ๋ง์กฑํด์ผ ํ๋ ์กฐ๊ฑด์ ์๋ฏธํจ.
- ์ฆ, ํ ์ด๋ธ ์์ ๋ฐ์ดํฐ๊ฐ ์ง์ผ์ผ ํ๋ ๊ท์น์ ๋งํจ.
- ์ด๊ฑธ ์ ์งํค๋ฉด ๋ฐ์ดํฐ๊ฐ ์๋ชป๋๊ฑฐ๋ ๋ชจ์๋ ์ ์๊ธฐ ๋๋ฌธ์ DBMS๊ฐ ์๋์ผ๋ก ๋ง์์ค.
[ ์์ญ ์ ์ฝ ์กฐ๊ฑด ]
- ๊ฐ ์์ฑ์ ๊ฐ์ ๋ฐ๋์ ํด๋น ์์ญ(Domain) ์ ํฌํจ๋์ด์ผ ํ๋ฉฐ, ์์๊ฐ์ด์ด์ผ ํจ.
- ์ฝ๊ฒ๋งํด, ๊ฐ ์ปฌ๋ผ์๋ ๋ฏธ๋ฆฌ ์ ํด์ง ์๋ฃํ(๋ฐ์ดํฐ ํ์ )์ ๊ฐ๋ง ๋ค์ด์ฌ ์ ์์ผ๋ฉฐ, ํ ์ ์์๋ ๋ถ๋ฆฌํ ์ ์๋ ํ๋์ ๊ฐ์ธ ์์๊ฐ๋ง ๋ค์ด์์ผ ํ๋ค๋ ์๋ฏธ์ด๋ค. ( ์์๊ฐ ์์: "์์ธ, ๋ถ์ฐ" X / "์์ธ" O )
[ ํค ์ ์ฝ ์กฐ๊ฑด ]
- ์๋ก ๋ค๋ฅธ ๋ ํฌํ์ ๋ชจ๋ ์์ฑ์ ๋ํด ๊ฐ์ ์์ฑ๊ฐ ์กฐํฉ์ ๊ฐ์ง ์ ์์
- ํ๋์ ํค๊ฐ ๋ชจ๋ ํฌํ์ ์ ์ผํ๊ฒ ์๋ณํ ์ ์์ด์ผ ํจ.
- ์ฝ๊ฒ๋งํด, ํ ์ด๋ธ ์์์ ๋ ํ์ด ๋์ผํ ํค๊ฐ์ ๊ฐ์ง ์ ์๋ค๋ ์๋ฏธ(UNIQUE)์ด๋ค.
- ์๋ฅผ ๋ค๋ฉด ํ๋ฒ์ด ํค๋ณธํค๋ผ๋ฉด, ๊ฐ์ ํ๋ฒ์ ๊ฐ์ง ํ์์ ๋ ๋ช ์กด์ฌ ํ ์ ์๋ ์๋ฏธ์. ์ฆ, ์ ์ผ์ฑ์ ๋ง์กฑํด์ผํจ.
[ ๊ฐ์ฒด ๋ฌด๊ฒฐ์ฑ ์ ์ฝ ์กฐ๊ฑด ]
- ํฌํ์ ์ ์ผํ๊ฒ ์๋ณํ๊ธฐ ์ํด์ ์ด๋ ํ ๊ธฐ๋ณธํค๊ฐ๋ ๋๊ฐ์ด ๋ ์ ์์.
- ์ฆ, ๊ธฐ๋ณธํค ๊ฐ์ ๋(NULL) ์ผ ์ ์๋ ์ ์ฝ ์กฐ๊ฑด์. ( ๊ฐ ํ์ ๊ตฌ๋ณํด์ผ ํ๋ฏ๋ก, ๋น์๋ ์ ์์ )
[ ์ฐธ์กฐ ๋ฌด๊ฒฐ์ฑ ์ ์ฝ ์กฐ๊ฑด ]
- ๋ค๋ฅธ ๋ฆด๋ ์ด์ ์ ์ํด ์ฐธ์กฐ๋๋ ํฌํ์ ๋ฐ๋์ ๊ทธ ๋ฆด๋ ์ด์ ๋ด์ ์กด์ฌํด์ผ ํจ. ( ์ฐธ์กฐ ๋ฌด๊ฒฐ์ฑ ์ด์ด์ผ ํ๋ค๋ ์๋ฏธ์ )
- ์ฝ๊ฒ๋งํด, ์ธ๋ํค๊ฐ ์ฐธ์กฐํ๋ ๊ฐ์ ๋ฐ๋์ ์ฐธ์กฐ๋ ํ ์ด๋ธ(๋ถ๋ชจ ํ ์ด๋ธ)์ ์กด์ฌํด์ผ ํ๋ค๋ ๊ท์น์ด๋ค.
โ 2. ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ค๊ณ
- ์ฌ์ฉ์์ ์๊ตฌ ์กฐ๊ฑด์์๋ถํฐ DB ๊ตฌ์กฐ๋ฅผ ๋์ถํ๊ณ ๊ตฌ์ถํ๋ ๊ณผ์ ์ด๋ค.

- ๋ฐ์ดํฐ ์ฒ๋ฆฌ์ ์์ฉ ํ๋ก๊ทธ๋จ ์ค๊ณ ๊ด๋ จ ํ๋(Java ๋ฑ) ๊ณผ DB ๋ด์ฉ ๋ฐ ๊ตฌ์กฐ ์ค๊ณ ๊ด๋ จ ํ๋ ๋ ๊ฐ์ง ์ค๊ณ๋ฅผ ๊ฐ์ด ๋ณํํจ.
(1) ์ค๊ณ ๊ณผ์ - ์ฌ์ฉ์ ์๊ตฌ ์ฌํญ ๋ถ์
- ์ฌ์ฉ์์ ์๋ํ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ชฉ์ ๊ณผ ์ฉ๋๋ฅผ ํ์ ํ๋ ๊ฒ์ผ๋ก๋ถํฐ ์ค๊ณ๊ฐ ์์๋๋ค.
- ์ ์ ์ ์ธ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ฌ์ฉ์๊ฐ ์ด๋ค ์ฌ์ฉ์ ์ธ์ง ๋ฒ์๋ฅผ ํ์ ํ์ฌ ์๋ณ์ ํ๊ฒ ๋จ.
- ๊ณต์์ ์ธ ์๊ตฌ ์กฐ๊ฑด ๋ช ์ธ ์ ์ - ์ ์ ์ ๋ณด ๊ตฌ์กฐ(DB ๋ด์ฉ/๊ตฌ์กฐ ์ค๊ณ)์ ๋ํ ์๊ตฌ ์กฐ๊ฑด ํ์
- ๊ณต์์ ์ธ ์๊ตฌ ์กฐ๊ฑด ๋ช ์ธ ์ ์ - ๋์ DB ์ฒ๋ฆฌ(๋ฐ์ดํฐ ์ฒ๋ฆฌ, ์์ฉ ํ๋ก๊ทธ๋จ) ์๊ตฌ ์กฐ๊ฑด ํ์
- ๊ณต์์ ์ธ ์๊ตฌ ์กฐ๊ฑด ๋ช ์ธ ์ ์ - ๋ฒ๊ธฐ๊ด์ ์ ์ฝ ์กฐ๊ฑด ํ์
- ์๊ตฌ ์ฌํญ ๋ช ์ธ์, ์๊ตฌ ์ฌํญ ์ ์์ ๋ฑ์ ๋ฌธ์ํ ์์ ๊น์ง ํฌํจ
(2) ์ค๊ณ ๊ณผ์ - ๊ฐ๋ ์ DB ์ค๊ณ
- ๊ฐ์ฒด ํ์ ๊ณผ ๊ฐ์ฒด ํ์ ๊ฐ์ ๊ด๊ณ๋ฅผ ๋ํ๋ด๊ธฐ ์ํด ํน์ DBMS์๋ ๋ฌด๊ดํ ๊ฐ๋ ์ ๋ฐ์ดํฐ ๋ชจ๋ธ์ ์ฌ์ฉํ์ฌ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ํ ๊ฐ๋ ์ ๊ตฌ์กฐ๋ฅผ ์์ฑํ๋ ๊ณผ์ ์ด๋ค.
- ๊ฐ๋ ์ ๊ตฌ์กฐ: ์ฌ์ฉ์์ ์๊ตฌ ์ฌํญ์ ๊ฐ๋จํ ๊ธฐ์ ํ ๊ฒ์ผ๋ก, ๋ฐ์ดํฐ ํ์ , ๊ด๊ณ, ์ ์ฝ ์กฐ๊ฑด์ ์ค๋ช ํ๋ค. ( ERD )
- E-R ๋ชจ๋ธ: ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ํ ๋ํ์ ๊ฐ๋ ์ ๋ชจ๋ธ
- ํธ๋์ญ์ (์์ฉ ํ๋ก๊ทธ๋จ) ๋ชจ๋ธ๋ง ๊ณผ์ ๋ ํด๋น ๋จ๊ณ์์ ์ด๋ค์ง.
(3) ์ค๊ณ ๊ณผ์ - ๋ ผ๋ฆฌ์ DB ์ค๊ณ
- ์์ฉ DBMS๋ฅผ ์ฌ์ฉํด์ ๊ณ ์์ค์ ๊ฐ๋ ์ ๊ตฌ์กฐ๋ฅผ ๋ชฉํ DBMS์ ๋ ผ๋ฆฌ์ ๋ฐ์ดํฐ ๋ชจ๋ธ๋ก ๋ณํํ๋ ๊ณผ์ ์ด๋ค.
- ์ฆ, ํด๋น ๋จ๊ณ์์๋ถํฐ๋ ํน์ DBMS์ ์์กดํ๋ ๋จ๊ณ๋ผ๋ ์๋ฏธ์ด๋ฉฐ, ๋ ผ๋ฆฌ์ ๋ฐ์ดํฐ ๋ชจ๋ธ๋ง ๋จ๊ณ๋ผ๊ณ ๋ถ๋ฆ.
- ๊ฒฐ๊ณผ์ ์ผ๋ก, ๋ชฉํ DBMS์ ๋ฐ์ดํฐ ์ ์์ด๋ก ๊ธฐ์ ๋ ์คํค๋ง๊ฐ ๋ง๋ค์ด์ง๋ ๊ณผ์ ์.
- **์ฝ๊ฒ๋งํด, DBMS ๋ง๋ค ๋ค๋ฅธ ๋ถ๋ถ์ DBMS ๋ฅผ ์ ํ๋ฉด์ ํด๋น DBMS์ ํน์ง์ ๋ง์ถฐ์ ์ค๊ณ๋ฅผ ํ๋ ๊ณผ์ ์ผ๋ก ๋ณด๋ฉด ๋จ.**
- ํด๋น ๋จ๊ณ์์๋ ์ ์ถ๋ ฅ๊ณผ ๊ธฐ๋ฅ์ ํํ๋ก๋ง ์ ์๋ ํธ๋์ญ์ ์ ๋ํ ์ธํฐํ์ด์ค ์ค๊ณํ๋ ๊ณผ์ ์ด ์ด๋ฃจ์ด์ง.
- **์ฝ๊ฒ๋งํด, ๊ธฐ๋ฅ(ํธ๋์ญ์ )์ SQL๋ฌธ์ผ๋ก ๊ตฌ์ฒดํํ๋ ๊ณผ์ ์ผ๋ก ๋ณผ ์ ์๋๋ฏ.**
[ ๋ ผ๋ฆฌ์ DB ์ค๊ณ - ๋ ผ๋ฆฌ์ ๋ชจ๋ธ๋ง ]

- ๊ฐ๋ ์ ๊ตฌ์กฐ๋ฅผ ๋ชฉํ DBMS์ ๊ตฌ์กฐ๋ก ๋ณํํ๋ ๊ณผ์ ์ด๋ค. ( ์ฝ๊ฒ๋งํด, ๋ด๊ฐ ์ ํํ DBMS ์ DB์ ๋ง๊ฒ ์ค๊ณํ๋ ๊ฒ )
- ์ฆ, ๊ฐ๋ ์ ๊ตฌ์กฐ๋ ERD ๋ฅผ ๋งํ๊ณ , ERD ์ ๊ทธ๋ ค์ง ๊ฐ์ฒด(์ฌ๊ฐํ), ๊ด๊ณ(๋ง๋ฆ๋ชจ)๋ฅผ ์ค์ ํ ์ด๋ธ ํํ๋ก ๋ฐ๊พธ๋ ๊ณผ์ ์.
- ์์ง ๊ตฌํํ๋ ๋จ๊ณ๋ ์๋์ง๋ง, ๊ฐ๋ ์ ๊ตฌ์กฐ๋ฅผ DBMS์ ๋ง๊ฒ ๋์ฑ ์์ธํ ์ค๊ณ๊ฐ ๋ ๋ชจ๋ธ๋ก ๋ณผ ์ ์์.
- ERD ์์ ์ฌ๊ฐํ์ผ๋ก ๊ทธ๋ ค์ง ๊ฐ์ฒด(Entity) ๋ ๊ด๊ณํ ๋ชจ๋ธ๋ก ๋ฐ๊ฟ ๋ ํ๋์ ํ ์ด๋ธ(๊ฐ์ฒด ๋ฆด๋ ์ด์ )์ด ๋๋ค.
- ๊ฐ์ฒด ํ์ ์ ์ํ ์์ฑ์ ํด๋น ๊ฐ์ฒด ๋ฆด๋ ์ด์ ์ ์์ฑ์ด ๋จ. ์ฆ, ERD์์ ๊ฐ์ฒด์ ๋ฌ๋ ค ์๋ ์์ฑ(ํ์ํ) ๋ค์ ๊ทธ๋๋ก ํ ์ด๋ธ์ ์ปฌ๋ผ(์์ฑ)์ด ๋๋ค๋ ๋ป์.
- ๋ง๋ฆ๋ชจ์ ๊ด๊ณ ํ์ ์ ๊ด๊ณ ๋ฆด๋ ์ด์ ์ผ๋ก ํํ์ด ๋จ. ์ฆ, ํ ์ด๋ธ๊ฐ์ ๊ด๊ณ์ ๋ํ ์ฐ๊ฒฐ์ ํ๋ ์ํ๋ก ๋ง๋ค์ด์ง.
- ๊ด๊ณ ํ์ ์ ์ํ ์์ฑ์ ํด๋น ๊ด๊ณ ๋ฆด๋ ์ด์ ์ ์์ฑ์ด ๋จ. ์ฆ, ์ธ๋ํค ์ ์์ ๊ด๋ จ๋ ์๋ฏธ์.
- ์ฐ๊ด๋ ๊ฐ์ฒด ํ์ ์ ํค ์์ฑ์ ๊ด๊ณ ๋ฆด๋ ์ด์ ์ ์์ฑ์ผ๋ก ํฌํจ์ํด.

- ๋ํ, ์์ ๊ฐ์ด ๊ด๊ณ ๋ฆด๋ ์ด์ ์ค๊ฐ ํ ์ด๋ธ์ ์ฌ์ฉํ์ง ์๊ณ , ๋ฌต์์ ์ผ๋ก ๊ด๊ณ๋ฅผ ํํ ํ ์๋ ์์.
(4) ์ค๊ณ ๊ณผ์ - ๋ฌผ๋ฆฌ์ DB ์ค๊ณ
- ๋ ผ๋ฆฌ์ ๊ตฌ์กฐ๋ก๋ถํฐ ํจ์จ์ ์ด๊ณ ๊ตฌํ ๊ฐ๋ฅํ ๋ฌผ๋ฆฌ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ตฌ์กฐ๋ฅผ ์ค๊ณํ๋ ๊ฒ์.
- ๋ฌผ๋ฆฌ์ DB ๊ตฌ์กฐ: ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ํฌํจ๋ ์ฌ๋ฌ ํ์ผ ํ์ ์ ๋ํ ์ ์ฅ ๋ ์ฝ๋์ ์์, ์์, ์ ๊ทผ ๊ฒฝ๋ก, ์ ์ฅ ๊ณต๊ฐ์ ํ ๋น ๋ฑ์ ํํํ ๊ฒ์ด๋ค. ( ์ฆ, ์ค์ ์ด๋ป๊ฒ ์ ์ฅ์ด ๋๋๊ฐ์ ๋ํ ์ ์ฅ ๊ด๋ จ ๋ด์ฉ์ด ํฌํจ์ด ๋ ์ ์์. )
- ํธ๋์ญ์ ์ ๋ํ ์ธ๋ถ์ ์ธ ์ค๊ณ๊ฐ ํฌํจ๋จ.
- ์ฝ๊ฒ๋งํด, ์ ์ฝ์กฐ๊ฑด ๊ตฌํ, ์ธ๋ฑ์ค ์ค๊ณ, ๋ณด์/๊ถํ ์ค์ ๋ฑ์ ํ๋ ๋จ๊ณ์ด๊ณ , ์ด๊ฒ๋ค์ ๊ตฌํ ๋จ๊ณ์์ ์คํ์ด ๋จ
(5) ์ค๊ณ ๊ณผ์ - ๊ตฌํ
- ๋ชฉํ DBMS์ ๋ฐ์ดํฐ ์ ์์ด๋ก ๊ธฐ์ ๋ ๋ช ๋ น๋ฌธ(๋ ผ๋ฆฌ์ ๋จ๊ณ์์ ๋ง๋ค์ด์ง ๊ฒ)์ ์ปดํ์ผํ๊ณ ์คํํด์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์คํค๋ง์ ๋น ๋ฐ์ดํฐ๋ฒ ์ด์ค ํ์ผ ์์ฑ์ ํ๊ฒ ๋๋ค.
- ์ดํ, ์ค์ ๋ฐ์ดํฐ ์ ์ฌ -> ๋ฐ์ดํฐ๋ฒ ์ด์ค ์คํ ๋ฐ ์ด์ ํ๋ ๋จ๊ณ์ด๋ค.
- ํธ๋์ญ์ ์ ๊ตฌํ์ ํ๊ฒ ๋จ.
โ 3. SQL
(1) SQL (Structured Query Language) ๋?
- ๊ตฌ์กฐํ๋ ์ง์ ์ธ์ด(Structured Query Language) ๋ก ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๋ค๋ฃจ๊ธฐ ์ํ ์ง์์ด์.
- IBM์ ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์์คํ ์ธ SYSTEM R์ ์ํด ์ฒ์ ์ค๊ณ๊ฐ ๋์์.
- ํ์ฌ๋ ๋ฏธ๊ตญ ํ์ค, ๊ตญ์ ํ์ค์ผ๋ก ์ ์ ๋์ด ์ ์ธ๊ณ ๊ฑฐ์ ๋ชจ๋ ๊ด๊ณํ DBMS ์์ ์ฌ์ฉ์ด ๋จ.
[ ํน์ง ]
- SQL์ ๋จ์ํ ๊ฒ์์ฉ ์ธ์ด๊ฐ ์๋, ๋ฐ์ดํฐ์ ์ ์(DDL), ์กฐ์(DML), ์ ์ด(DCL) ๊น์ง ๋ค๋ฃฐ ์ ์๋ ์์ ํ DB์ธ์ด์.
- ๋ํ์์ผ๋ก ์ง์ ํฐ๋ฏธ๋์์ ์ฌ์ฉํ ์๋ ์๊ณ , C, Java, Python ๊ฐ์ ์ธ์ด ์์ ์ฝ์ ํด์ ํจ๊ป ์ฌ์ฉํ ์๋ ์์.
- SQL ์์๋ ๊ด๊ณํ ๋ชจ๋ธ์ ๋ฆด๋ ์ด์ , ํฌํ, ์์ฑ ๋์ ํ ์ด๋ธ, ํ, ์ด ์ด๋ผ๋ ์ฉ์ด๋ฅผ ๋ ๋ง์ด ์ฌ์ฉํจ. ( ์ ํธํจ )
- SQL์ ์ฌ์ฉ์๊ฐ ์ฒ๋ฆฌ ์ ์ฐจ๋ฅผ ์ ์ํ์ง ์๊ณ ๊ฒฐ๊ณผ๋ง ์์ฒญํ๋ ๋น์ ์ฐจ์ ์ธ์ด์ด๋ค.
# ์ ์ฐจ์ ์ธ์ด: Python
result = [] // # ages ๋ฆฌ์คํธ์์ 30์ธ ์ด์๋ง ๊ณจ๋ผ๋ด๋ ์ ์ฐจ
for age in ages:
if age >= 30:
result.append(age)
# ๋น์ ์ฐจ์ ์ธ์ด: SQL
SELECT * FROM people WHERE age >= 30;
- ๋น์ ์ฐจ์ ์ธ์ด: ์ํ๋ ๊ฒฐ๊ณผ ์กฐ๊ฑด๋ง ๋ช ์ํ๋ฉด ์ ์ฐจ๋ DBMS ๊ฐ ์๋์ผ๋ก ์ฒ๋ฆฌ๋ฅผ ํด์ค.
(2) ๋ฐ์ดํฐ ์ ์์ด

- ์คํค๋ง, ๋๋ฉ์ธ, ํ ์ด๋ธ, ๋ทฐ, ์ธ๋ฑ์ค ๋ฅผ ์ ์ํ๊ฑฐ๋ ์์ ๋ฐ ์ ๊ฑฐํ๋ ๋ฌธ์ฅ(๋ช ๋ น์ด)์ผ๋ก ๊ตฌ์ฑ์ด ๋์ด์์.
[ ๋ฐ์ดํฐ ์ ์์ด - ๊ธฐ๋ณธ์ ์ธ ๋ฐ์ดํฐ ํ์ ]

- ๋ฐ์ดํฐ ์ ์์ด - ํ ์ด๋ธ์ ๋ง๋๋ ๊ณผ์ ์๋ ๋ฐ์ดํฐ ํ์ ์ ๊ฐ์ด ๋ช ์๋ฅผ ํด์ค์ผ ํจ.
(2) ๋ฐ์ดํฐ ์ ์์ด - ํ ์ด๋ธ ์์ฑ


- ์์๊ฐ์ด ๋ฆด๋ ์ด์ ์คํค๋ง(๋ฆด๋ ์ด์ ์ด๋ฆ๊ณผ ์์ฑ) ์ ๋ง๋ค๊ธฐ ์ํด์๋, ์๋์ ๊ฐ์ด SQL ๋ฌธ์ ์์ฑํ๋ฉด ๋๋ค.
- ๊ฐ๊ฐ์ ๋ฆด๋ ์ด์ ์์ฑ์๋ ์ด๋ฆ์ ์์ฑ๋ช ์ ๋ช ์ํด์ฃผ๊ณ , ๋ฐ์ดํฐ ํ์ ๊ณผ ํฌ๊ธฐ๋ฅผ ์ค์ ํด ์ค ์ ์์.
- PRIMARY KEY ์ค์ ์ ํตํด ์ ์ฝ ์กฐ๊ฑด์ ๊ฑธ์์ผ๋ก์จ, ๊ณต๊ธ์๋ฒํธ๋ unique ๋ฅผ ๋ณด์ฅ๋ฐ์ผ๋ฏ๋ก, ๋ฌด๊ฒฐ์ฑ์ ๋ง์กฑ ํ ์ ์์.
- ์ฆ, ์์ ๊ฐ์ด ์ฌ๋ฌ ํ ์ด๋ธ์ CREATE TABLE ์ด๋ผ๋ ๋ฐ์ดํฐ ์ ์์ด๋ฅผ ํตํด ๋ง๋ค ์ ์์.

- ๋ํ, ๋ ๊ฐ ์ด์์ ํ ์ด๋ธ ๊ด๊ณ๋ฅผ ๋งบ๊ธฐ ์ํด์๋ FOREIGN KEY(์ธ๋ํค) ์ ์ฝ์กฐ๊ฑด์ ํตํด์, ๊ด๊ณ๋ฅผ ๋งบ์ ์ ์์.
- ํด๋น ์ธ๋ํค ์ ์ฝ์กฐ๊ฑด์ ๋ณดํต ์๋ ํ ์ด๋ธ์ PRIMARY KEY(๊ธฐ๋ณธํค) ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๊ด๊ณ๋ฅผ ๋งบ์. ( JOIN ๊ฐ๋ฅ )
(3) ๋ฐ์ดํฐ ์ ์์ด - ํ ์ด๋ธ ์์ ๋ฐ ์ปฌ๋ผ ์ญ์
[ ์๋ก์ด ์ด ์ถ๊ฐ ]

ALTER TABLE ํ
์ด๋ธ๋ช
ADD COLUMN ์ปฌ๋ผ๋ช
๋ฐ์ดํฐํ์
[์ ์ฝ์กฐ๊ฑด];
# employees ํ
์ด๋ธ์ VARCHAR(100) ๋ฐ์ดํฐ ํ์
์ ๊ฐ๋ email ์ปฌ๋ผ ADD
ALTER TABLE employees ADD COLUMN email VARCHAR(100);
# stock ๊ฐ์ด ๋ฐ๋์ ์กด์ฌํด์ผ ํ๋ฉฐ, ๊ธฐ๋ณธ๊ฐ์ 0์ผ๋ก ์ค์ ๋ฉ๋๋ค.
ALTER TABLE productsADD COLUMN stock INT NOT NULL DEFAULT 0;
- ์์ ๊ฐ์ ์ง์์ด ๊ตฌ์ฑ์ ํตํด ํ ์ด๋ธ ์์ ์ ํ ์ ์์.
[ ๊ธฐ์กด ์ด ์ญ์ ]

ALTER TABLE ํ
์ด๋ธ๋ช
DROP COLUMN ์ปฌ๋ผ๋ช
;
ALTER TABLE employees DROP COLUMN email;
# RESTRICT, CASCADE options
ALTER TABLE ํ
์ด๋ธ๋ช
DROP COLUMN ์ปฌ๋ผ๋ช
RESTRICT; # RESTRICT ๋ํดํธ ์ต์
ALTER TABLE ํ
์ด๋ธ๋ช
DROP COLUMN ์ปฌ๋ผ๋ช
CASCADE; # CASCADE ์ฐธ์กฐ ๊ฐ์ ์ญ์
- CASCADE: ์ญ์ ์ ์ฐธ์กฐํ๊ณ ์๋ ๋ชจ๋ ์ ์ฝ์กฐ๊ฑด/๊ฐ์ฒด๊น์ง ๊ฐ์ด ์ญ์ ๋ฅผ ํด์ค๋ค.
- RESTRICT: ์ฐธ์กฐ๊ฐ ์์ผ๋ฉด ์ญ์ ๋ถ๊ฐ๋ฅํ๊ฒ ์์ ํ๊ฒ ๋ง์์ค. ( ๋ณดํต ์ด ์ต์ ์ด ๋ํดํธ๋ก ์ ์ฉ๋์ด ์์. )
[ ๊ธฐ์กด ์ด์ ๋ํ ๊ธฐ๋ณธ๊ฐ ์ง์ ๋ฐ ์ญ์ ]

ALTER TABLE ํ
์ด๋ธ๋ช
ALTER ์ปฌ๋ผ๋ช
(DROP DEFAULT / SET DEFAULT ๊ธฐ๋ณธ๊ฐ)
# SET DEFAULT: ๊ธฐ๋ณธ๊ฐ์ ์ง์ ์ง์์ด -> age ์ปฌ๋ผ์ ๊ธฐ๋ณธ๊ฐ 18 ์ค์
ALTER TABLE users ALTER COLUMN age SET DEFAULT 18;
# DROP DEFAULT: ๊ธฐ๋ณธ๊ฐ ์ ๊ฑฐ ์ง์์ด -> age ์ปฌ๋ผ์ ๊ธฐ๋ณธ๊ฐ ์ ๊ฑฐ
ALTER TABLE users ALTER COLUMN age DROP DEFAULT;
- ์์ฑ์ ๋ํ ๋ฐ์ดํฐ ๊ธฐ๋ณธ๊ฐ์ ์ญ์ ํ๊ฑฐ๋ ์ง์ ํด์ฃผ๋ ์ง์์ด์.
(4) ๋ฐ์ดํฐ ์ ์์ด - ํ ์ด๋ธ ์ญ์

DROP TABLE ํ
์ด๋ธ๋ช
[CASCADE, RESTRICT];
DROP TABLE employees; # ๋ํดํธ RESTRICT
- ํ ์ด๋ธ์ ๋ํ ์ค๋ช ์ด ์นดํ๋ก๊ทธ์์ ์ ๊ฑฐ๋๋ฏ๋ก, ๊ธฐ๋ณธ ํ ์ด๋ธ์์ ์ ์๋ ๋ชจ๋ ์ธ๋ฑ์ค์ ๋ทฐ๋ ์๋์ผ๋ก ์ญ์ ๊ฐ ๋๋ค.
(5) ๋ฐ์ดํฐ ์กฐ์์ด

- ๊ธฐ๋ณธ ํ ์ด๋ธ, ๋ทฐ์ ํด๋นํ๋ ๋ฐ์ดํฐ๋ฅผ ์กฐ์(๊ฒ์, ๊ฐฑ์ , ์ญ์ , ์ฝ์ ) ํ๊ธฐ ์ํ ๋ช ๋ น๋ฌธ์ด๋ค.
(5) ๋ฐ์ดํฐ ์กฐ์์ด - ๋ฐ์ดํฐ ๊ฒ์ SELETE ๋ฌธ

- ALL: ์ค๋ณต์ ํ์ฉํ๋ฉฐ, ๋ชจ๋ ๋ฐ์ดํฐ๋ฅผ ๋ณด์ฌ์ฃผ๋ ์ต์ ์.
- DISTINCT: ์ค๋ณต์ ๋ชจ๋ ์ ๊ฑฐํ์ฌ ๋ณด์ฌ์ฃผ๋ ์ต์ ์.

- AS ๋ฅผ ํตํด ๊ฑฐ๋ํฌ์ธํธ์ ์ปฌ๋ผ๋ช ์ ๊ฑฐ๋์ ์๋ก ๋ณ๊ฒฝํ์ฌ ์กฐํ๊ฐ ๊ฐ๋ฅํจ.
- ORDER BY ๋ฅผ ํตํด ์ ๋ ฌ์ ํ ์ ์๊ณ , ์ต์ ์ผ๋ก DESC(๋ด๋ฆผ์ฐจ์) ASC(์ค๋ฅธ์ฐจ์) ์ค์ ์ด ๊ฐ๋ฅํจ.
- FROM ์ ํ ์ด๋ธ ๋ ๊ฐ๋ฅผ ์ง์ ํด ๋ ํ ์ด๋ธ์ ๊ดํ WHERE ์กฐ๊ฑด์ ์ค์ ํด ์กฐํ๊ฐ๋ฅ.

- SUM() ๊ณผ ๊ฐ์ ํจ์๋ฅผ ํตํด ํ ์ด๋ธ์ ์ ์ฅ๋ ์์ฑ๊ฐ๋ผ๋ฆฌ ์ฐ์ฐ์ ํ ์ ์์.
- GROUP BY ๋ฅผ ํตํด ๊ทธ๋ฃน์ผ๋ก ๋ฌถ์ ์ ์์ผ๋ฉฐ, GROUP BY ์๋ HAVING ์กฐ๊ฑด์ ์ ์ฌ์ฉ ํ ์ ์์.

- IN: ์๋ฒ์ฟผ๋ฆฌ ๊ฒฐ๊ณผ์ ํน์ ๊ฐ์ด ์กด์ฌํ๋์ง ๋น๊ต
- EXISTS: ์๋ธ์ฟผ๋ฆฌ ๊ฒฐ๊ณผ๊ฐ ํ๋๋ผ๋ ์กด์ฌํ๋์ง ์ฌ๋ถ๋ง ํ์ธ
(6) ๋ฐ์ดํฐ ์กฐ์์ด - ๋ฐ์ดํฐ ์ฝ์ INSERT ๋ฌธ

- INSERT INTO ํ ์ด๋ธ๋ช (์ปฌ๋ผ๋ช , ์ปฌ๋ผ๋ช , ...) VALUES('์ปฌ๋ผ๊ฐ', '์ปฌ๋ผ๊ฐ' ...) ์ ํตํด ๋ฐ์ดํฐ ์ฝ์ ์ด ๊ฐ๋ฅํจ.
(7) ๋ฐ์ดํฐ ์กฐ์์ด - ๋ฐ์ดํฐ ์ญ์ DELETE ๋ฌธ

- DELETE FROM ํ ์ด๋ธ๋ช ; ์ ํ๊ฒ ๋๋ฉด ํด๋น ํ ์ด๋ธ์ ์์ฑ๊ฐ๋ค์ด ๋ชจ๋ ์ญ์ ๊ฐ ๋จ.
- ํ ์ด๋ธ, ์ปฌ๋ผ ๋ฑ ํ ์ด๋ธ ๊ตฌ์กฐ๋ ๋จ์ ์์ง๋ง, ํ ์ด๋ธ์ ์์ฑ๊ฐ์ ๋ ๋ผ๊ฐ๊ฒ ๋จ.
- ์๋ DROP TABLE ํ ์ด๋ธ๋ช ; ๊ฐ์ ๊ฒฝ์ฐ์๋ ํ ์ด๋ธ ์์ฒด๋ฅผ ์ญ์ ํ๋ ๊ฒ์ด๋ฏ๋ก, ๊ตฌ์กฐ๋ฅผ ์์ ๋ ๋ฆฌ๊ฒ ๋๋ค.
- ์ฆ, ํ ์ด๋ธ์ด ์ฌ๋ผ์ง๋ ๋์์ ๋ด๋ถ์ ์ปฌ๋ผ๋ค๊ณผ ์์ฑ๊ฐ ๋ฑ์ด ๋ค ๋ ๋ผ๊ฐ.
(8) ๋ฐ์ดํฐ ์กฐ์์ด - ๋ฐ์ดํฐ ๊ฐฑ์ UPDATE ๋ฌธ

- WHERE ์กฐ๊ฑด์ ํ์ฉํด ์ด๋ค ํ์ ๋ฐ๊ฟ๊ฑด์ง ๋ช ์ ํ๋ฉฐ, SET ์ ํตํด ํน์ ์ปฌ๋ผ์ ์์ฑ๊ฐ์ ๋ฃ์ด์ ์์ ํจ.
โ 4. SQL - ๋ทฐ

CREATE VIEW high_score AS
SELECT name, score FROM student WHERE score >= 90;
SELECT * FROM high_score; -- ๋ทฐ๋ ๊ฐ์์ ํ
์ด๋ธ์ฒ๋ผ ์กฐํ๋จ
- ๋ทฐ(View): ํ๋ ์ด์์ ํ ์ด๋ธ์ ๊ธฐ๋ฐ์ผ๋ก ๋ง๋ค์ด์ง ๊ฐ์ ํ ์ด๋ธ์ ์๋ฏธํจ.
- ๋ทฐ ๋ด์ฉ์ ๋ฌผ๋ฆฌ์ ์ผ๋ก ๊ตฌํ๋์ด ์ค์ ์ ์ผ๋ก ์กด์ฌํ๋ ๊ฒ์ด ์๋๋ผ ๋ทฐ์ ๋ํ ์กฐ์์ ์๊ตฌํ ๋๋ง๋ค ๊ธฐ๋ณธ ํ ์ด๋ธ์ ๋ฐ์ดํฐ๋ฅผ ์ด์ฉํด์ ๋ด์ฉ์ ๋ง๋ค์ด์ ์ฌ์ฉ์์๊ฒ ์๋ ๊ฒ์ฒ๋ผ ๋ณด์ฌ์ฃผ๋ ๊ธฐ๋ฅ์ ์ํํจ.
- ๋ทฐ๋ ํจ์์ฒ๋ผ ์ฌ์ฌ์ฉ ๊ฐ๋ฅํ๋ฉด์, ๊ฒฐ๊ณผ๊ฐ ํ ์ด๋ธ์ฒ๋ผ ๋ณด์ด๋ ํน์ฑ ๋๋ฌธ์ ๊ฐ์ ํ ์ด๋ธ ์ด๋ผ๊ณ ๋ถ๋ฆ.
- ์ฆ, ๋ทฐ์ ๋ณธ์ง์ ์ฟผ๋ฆฌ์ ์ด๋ฆ์ ๋ถ์ฌ์ ์ฌ์ฌ์ฉ ๊ฐ๋ฅํ๊ฒ ํ๋ ๊ฒ์ด ํต์ฌ์ด๋ฉฐ ๋ณธ์ง์. ( ๊ทธ๋ฆฌ๊ณ SELECT ๋ฌธ๋ง ์ฌ์ฉ? )
(1) ๋ทฐ ์ฅ์
- DB ์ฌ๊ตฌ์ฑ(ํ์ฅ, ๊ตฌ์กฐ๋ณ๊ฒฝ) ๋ฉด์์ ์ด๋ ์ ๋์ ๋ ผ๋ฆฌ์ ๋ฐ์ดํฐ ๋ ๋ฆฝ์ฑ์ ์ ๊ณตํจ.
- ๋์ผ ๋ฐ์ดํฐ์ ๋ํด ๋์์ ์ฌ๋ฌ ์ฌ์ฉ์์๊ฒ ๋ค์ํ ๋ทฐ๋ฅผ ์ ๊ณตํจ
- ํน์ ์ฌ์ฉ์๊ฐ ๊ด์ฌ์๋ ๋ฐ์ดํฐ์๋ง ์ด์ ์ ๋ง์ถ๊ณ ๋๋จธ์ง๋ ๋ฌด์ํจ
- ์ฌ์ฉ์์ ๋ฐ์ดํฐ์ ๋ํ ์ธ์๊ณผ ๊ด๋ฆฌ๋ฅผ ๋จ์ํ์ํด
- ๊ฐ์ถฐ์ง ๋ฐ์ดํฐ์ ๋ํด ๋ณด์์ด ์๋์ผ๋ก ์ ๊ณต์ด ๋๋ค.
(2) ๋ทฐ ๋จ์
- ๋ ์์ ์ธ ์ธ๋ฑ์ค๋ฅผ ๊ฐ์ง ์ ์๊ณ , ์ ์ ๋ณ๊ฒฝ ๋ถ๊ฐ, ์ฝ์ /์ญ์ /๊ฐฑ์ ์ฐ์ฐ์ ์ ์ฝ์ด ๋ฐ๋ฆ.
'๐๋ฐฉ์กํต์ ๋ํ๊ต > ๐ป์ปดํจํฐ๊ณผํ ๊ฐ๋ก ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| [์ปดํจํฐ๊ณผํ ๊ฐ๋ก ] 15๊ฐ - ๋คํธ์ํฌ (0) | 2025.11.10 |
|---|---|
| [์ปดํจํฐ๊ณผํ ๊ฐ๋ก ] 13๊ฐ - ๋ฐ์ดํฐ๋ฒ ์ด์ค(1) (0) | 2025.11.10 |
| [์ปดํจํฐ๊ณผํ ๊ฐ๋ก ] 12๊ฐ - ํ๋ก๊ทธ๋๋ฐ ์ธ์ด(2) (0) | 2025.11.10 |
| [์ปดํจํฐ๊ณผํ ๊ฐ๋ก ] 11๊ฐ - ํ๋ก๊ทธ๋๋ฐ ์ธ์ด(1) (0) | 2025.11.10 |
| [์ปดํจํฐ๊ณผํ ๊ฐ๋ก ] 10๊ฐ - ์ปดํจํฐ ๊ตฌ์กฐ(2) (0) | 2025.11.10 |