๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์์ Relation(๊ด๊ณ) ๋ ํ ์ด๋ธ ๊ฐ์ ์ฐ๊ฒฐ์ ์ ์ํ๋ ํต์ฌ ์์๋ค. ๋ ผ๋ฆฌ์ ๋ชจ๋ธ๋ง์์๋ ์ฐธ์ฌ๋, ์ธ๋ ํค ์์น, ์นด๋๋๋ฆฌํฐ(1:1, 1:N, M:N)๋ฅผ ์ ํํ ์ค๊ณํด์ผ ๋ฐ์ดํฐ ๋ฌด๊ฒฐ์ฑ๊ณผ ์กฐํ ํจ์จ์ด ๋ณด์ฅ๋๋ค. ์ด ๊ธ์์๋ ๊ด๊ณ์ ๊ธฐ๋ณธ ์์น๋ถํฐ 1:1, M:N ๊ด๊ณ์ ์ค๋ฌด ๊ตฌํ ํจํด๊น์ง ์ ๋ฆฌํ๋ค. 1. ๊ด๊ณ์ ๊ธฐ๋ณธ ์์น๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๊ด๊ณ๋ ๋ฐฉํฅ์ด ์๋ค. JOIN์ ํตํด ์ด๋ ์ชฝ์์๋ ์๋ฐฉํฅ์ผ๋ก ์์ ๋กญ๊ฒ ํ์ํ ์ ์๋ค. ์ธ๋ ํค๋ ๋จ์ํ ์ ์ฝ์กฐ๊ฑด์ผ ๋ฟ, ์กฐํ ๋ฐฉํฅ์ ์ ํํ์ง ์๋๋ค. ์ฐธ์ฌ๋(Participation) ์ฐธ์ฌ๋๋ ์ํฐํฐ๊ฐ ๊ด๊ณ์ ํ์(Mandatory)์ธ์ง ์ ํ(Optional)์ธ์ง๋ฅผ ๋ํ๋ธ๋ค. ๋ ผ๋ฆฌ์ ๋ชจ๋ธ๋ง์์๋ ์ธ๋ ํค์ NULL ํ์ฉ ์ฌ๋ถ๋ก ๊ตฌํํ๋ค. ..
2026.01.03๋ฐ๊ฐ์ต๋๋ค. JAY์ ๋๋ค! ๐ฉโ๐ป
ํ์คํ ์์ญ์์ ํ์ ์ ๊ฐ์น๋ฅผ ๊ตฌํํ๋ ๊ฐ๋ฐ์๊ฐ ๋๊ธฐ ์ํ ๋ ธ๋ ฅ์ ์ด์ด๊ฐ๊ณ ์ ์ด๊ณณ JAYโจ๏ธCODE ์ ์ฑ์ฅ์ ๊ธฐ์ฌํ ๋๊ตฌ๋ค์ ๊ธฐ๋กํ๊ณ ์์ต๋๋ค.
Total5
-
๋ ผ๋ฆฌ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ชจ๋ธ๋ง – Relation(๊ด๊ณ)์ ๋ชจ๋ ๊ฒ
-
๋ ผ๋ฆฌ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ชจ๋ธ๋ง – ํค(Key)์ ๋ชจ๋ ๊ฒ
๋ฐ์ดํฐ๋ฒ ์ด์ค ์ค๊ณ์์ ๋ ผ๋ฆฌ์ ๋ชจ๋ธ๋ง(Logical Modeling) ์ ๋ฐ์ดํฐ๋ฅผ ๊ตฌ์กฐ์ ์ผ๋ก ์ ์ํ๊ณ ์ํฐํฐ ๊ฐ์ ๊ด๊ณ๋ฅผ ๋ช ํํ ํ๋ ํต์ฌ ๋จ๊ณ๋ค. ๊ทธ์ค์์๋ Key ๋ ๋ฐ์ดํฐ์ ์ ์ฒด์ฑ๊ณผ ๋ฌด๊ฒฐ์ฑ์ ๋ณด์ฅํ๋ ๊ฐ์ฅ ์ค์ํ ์์๋ค. ์ด๋ฒ ๊ธ์์๋ Key์ ์ข ๋ฅ์ ์ญํ , ๊ทธ๋ฆฌ๊ณ ํ๋ ์ค๊ณ์์ ์ ๋๋ถ๋ถ์ ์์คํ ์ด ๋๋ฆฌ ํค(Surrogate Key) ๋ฅผ ์ ํํ๋์ง ์์๋ณด์. 1. Key๋ ๋ฌด์์ธ๊ฐKey๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค์์ ๊ฐ ํ(Row)์ ์ ์ผํ๊ฒ ์๋ณํ๊ธฐ ์ํ ์ฅ์น๋ค.๋ฐ์ดํฐ๊ฐ ์๋ฌด๋ฆฌ ๋ง์๋ Key๋ฅผ ํตํด ํน์ ํ์ ์ ํํ ์ฐพ์๋ผ ์ ์์ด์ผ ํ๋ค.์ด๋ ๋ฐ์ดํฐ ๋ฌด๊ฒฐ์ฑ์ ์ถ๋ฐ์ ์ด๋ค. 2. ๊ธฐ๋ณธ ํค (Primary Key, PK)๊ธฐ๋ณธ ํค๋ ํ ์ด๋ธ์ ๋ชจ๋ ํ์ ์ ์ผํ๊ฒ ์๋ณํ๋ ๋ํ ํค๋ค.NULL ๋ถ๊ฐ: ๊ฐ์ด ๋ฐ๋์ ..
2026.01.03 -
๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋์์ฑ ์ ์ด
ํธ๋์ญ์ ์ ์ญํ ํธ๋์ญ์ ์ด๋ํธ๋์ญ์ ์ ์ฌ๋ฌ ๊ฐ์ ์กฐํ๋ ์ฐ๊ธฐ๋ฅผ ๋ ผ๋ฆฌ์ ์ผ๋ก ํ๋์ ์ฐ์ฐ์ผ๋ก ๋ฌถ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ํต์ฌ ๊ธฐ๋ฅ์ ๋๋ค. ๋ฐ์ดํฐ๋ฅผ ๋ค๋ฃจ๋ ๊ณผ์ ์์ ๋ฐ์ํ ์ ์๋ ๋ค์ํ ๋์์ฑ ๋ฌธ์ ๋ฅผ ์ฒ๋ฆฌํด์ค๋๋ค. ํธ๋์ญ์ ์ ํต์ฌ ์์น์์์ฑ (Atomicity)ํ๋์ ํธ๋์ญ์ ์ ํฌํจ๋ ๋ชจ๋ ์ฐ๊ธฐ๋ ๋ชจ๋ ์ ์ฉ๋๊ฑฐ๋(์ปค๋ฐ) ๋ชจ๋ ์ทจ์(๋กค๋ฐฑ)๋ฉ๋๋คํธ๋์ญ์ ์์ ์ฟผ๋ฆฌ ์ค ํ๋๋ผ๋ ์คํจํ๋ฉด ์ ์ฒด ํธ๋์ญ์ ์ ๋กค๋ฐฑํจ์ผ๋ก์จ ๋ฐ์ดํฐ๊ฐ ๊นจ์ง๋ ๊ฒ์ ๋ฐฉ์งํ ์ ์์ต๋๋ค BEGIN; -- ์ฌ๋ฌ ์์ ์ด ํ๋์ ๋ ผ๋ฆฌ์ ๋จ์ UPDATE account SET balance = balance - 1000 WHERE user_id = 1; UPDATE account SET balance = balance + 1000 WHERE u..
2026.01.01 -
๊ฐ๋ ์ ๋ชจ๋ธ๋ง (2) - ์ํฐํฐ ๊ด๊ณ์ ERD ์ค์ต
๊ฐํ ์ํฐํฐ์ ์ฝํ ์ํฐํฐ๊ฐํ ์ํฐํฐ (Strong Entity)๋ ๋ฆฝ์ ์ธ ์กด์ฌ๊ฐ ๊ฐ๋ฅํ๋ค.์์ ๋ง์ ๊ณ ์ ํ ์ฃผ์๋ณ์๋ฅผ ๊ฐ์ง๋ค.๋ค๋ฅธ ์ํฐํฐ์ ์กด์ฌ์ ์์กดํ์ง ์๋๋ค.์์: ์ฌ์, ๊ณ ๊ฐ, ์ํ, ๋ถ์ ๋ฑ๊ณผ ๊ฐ์ด ๋ ๋ฆฝ์ ์ผ๋ก ๊ด๋ฆฌ๋๋ ์ํฐํฐ์ฝํ ์ํฐํฐ (Weak Entity)์์ ์ํฐํฐ๊ฐ ์์ด์ผ๋ง ์์ ์ ์กด์ฌ๊ฐ ์๋ฏธ๋ฅผ ๊ฐ์ง๋ค.์์ ์ํฐํฐ์ ์ฃผ์๋ณ์๋ฅผ ๋น๋ ค์ ์์ ์ ์์ฑ๊ณผ ๊ฒฐํฉํ์ฌ ๋ณตํฉํค๋ฅผ ๊ตฌ์ฑํ๋ค.์์: ๋ถ์๊ฐ์กฑ์ค๋ฌด ์ด์ผ๊ธฐ: ์๋ณ ๊ด๊ณ, ๋น์๋ณ ๊ด๊ณ์ ํต์ ์ธ ์ค๊ณ ๋ฐฉ์์์ ์ฝํ ์ํฐํฐ๋ ์์ ์ํฐํฐ์ ์ฃผ์๋ณ์๋ฅผ ๋น๋ ค์ ์์ ์ ์์ฑ(๋ถ๋ถํค)๊ณผ ๊ฒฐํฉํด์ ๋ณตํฉ ํค๋ฅผ ๋ง๋๋ ๋ฐฉ์์ ์ฌ์ฉํ๋ค.์ด๊ฒ์ ๋ ผ๋ฆฌ์ ๋ชจ๋ธ๋ง ๋จ๊ณ์์ ์๋ณ ๊ด๊ณ๋ผ ํ๋ฉฐ ์ด๋ ๊ฒ ๋๋ฉด ์์์ ๋ง๋ค ๋ ๋ฐ๋์ ๋ถ๋ชจ์ PK ๊ฐ์ ์ ๋ ฅํด์ผ ํ๋ค.์ต๊ทผ์๋ ๋ ์ ์ฐ..
2025.10.07 -
๊ฐ๋ ์ ๋ชจ๋ธ๋ง (1) - ์๊ตฌ์ฌํญ ๋ถ์๊ณผ ์ํฐํฐ์ ์ดํด
์๊ตฌ์ฌํญ ๋ถ์์์ ์์ํ๋ ์ค๊ณ๋ชจ๋ ์ค๊ณ๋ ์๊ตฌ์ฌํญ ๋ถ์์์ ์์ํ๋ค.์๊ตฌ์ฌํญ ๋ฌธ์๋ฅผ ์ฝ์ ๋๋ ํนํ '๋ช ์ฌ'์ '๋์ฌ'์ ์ง์คํด์ผ ํ๋ค.์ด๋ค์ด ๋ฐ๋ก ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๊ตฌ์กฐ๋ฅผ ๊ฒฐ์ ํ๋ ํต์ฌ ์์์ด๊ธฐ ๋๋ฌธ์ด๋ค.๋ช ์ฌ (Nouns)์ฐ๋ฆฌ๊ฐ ๊ด๋ฆฌํด์ผ ํ ๋ฐ์ดํฐ์ ๋์์ ๋ํ๋ธ๋ค.์ํฐํฐ(Entity) ๋๋ ๊ทธ ์ํฐํฐ๊ฐ ๊ฐ์ง๋ ์์ฑ(Attribute)์ด ๋ ์ ์๋ค.์์: ํ์, ์์ด๋, ๋น๋ฐ๋ฒํธ, ํ์๋ช , ์ฃผ์, ์ฐ๋ฝ์ฒ, ์ํ, ์ํ ์ฝ๋, ์ํ๋ช , ๊ฐ๊ฒฉ, ์ฌ๊ณ ์๋, ์ฃผ๋ฌธ์, ์ฃผ๋ฌธ ๋ฒํธ, ๋ฐฐ์ก์ง, ์ฃผ๋ฌธ ์ผ์, ๊ฒฐ์ ๊ธ์ก, ์ฃผ๋ฌธ ๋ด์ญ, ์ฃผ๋ฌธ ์๋๋์ฌ (Verbs)๋ฐ์ดํฐ๋ค ์ฌ์ด์ ํ์๋ ๊ด๊ณ๋ฅผ ๋ํ๋ธ๋ค.๊ด๊ณ(Relationship)๊ฐ ๋ ์ ์๋ค.์์: ๊ฐ์ ํ๋ค, ์์ ํ๋ค, ํํดํ๋ค, ๋ฑ๋กํ๋ค, ๋ณ๊ฒฝํ๋ค, ์ฃผ๋ฌธํ๋ค, ์กฐ..
2025.10.07