ERD
[Entity Relationship Diagram]
์ ์ : ๊ฐ์ฒด๋ค๊ฐ์ ๊ด๊ณ๋ฅผ ๋์ํ ํด๋์ ๊ฒ, ์ฆ ๊ณ์ฒด - ๊ด๊ณ์ ๋ค์ด์ด๊ทธ๋จ
- Entity - ์กด์ฌํ๊ณ ์๋ ๊ฒ ( ์ฌ๋, ๋ฌผ์ฒด ๊ฐ๋ ๋ฑ)
- Attribute - ํน์ฑ, ์์ฑ (์ฌ๋ - ํค, ๋ชธ๋ฌด๊ฒ, ์ฑ๋ณ)
- Relationship - ๊ด๊ณ (entity๋ฅผ ์ฐ๊ฒฐํด์ฃผ๋ ๊ด๊ณ)
EX)
Teacher --------> Class ------------------> Student
Department Department Name
Age Number of Students Age
Name Gender
ERD์ ๊ตฌ์ฑ ์์
- ์ํฐํฐ (์ฌ๊ฐํ์ผ๋ก ํ์)
- ์์ฑ (๋๊ทธ๋ผ๋ฏธ๋ก ํ์)
- ๊ด๊ณ (๋ง๋ฆ๋ชจํ์ผ๋ก ํ์)
Entity๋?
ํ ์ด๋ธ์ ๊ตฌ์ฑํ๋ ๊ฐ์ฒด ๊ตฌ์ฑ์ฑ๋ถ
๊ด๊ณ๋ ์์ ๊ฐ์ ๊ธฐํธ๋ค๋ก ํํ์ด ๊ฐ๋ฅํ๋ค!
[์ถ๊ฐ ์ค๋ช ]
1. One : ์ผ๋์ผ ํน์ ์ผ๋๋ค ๊ด๊ณ. ์ฃผ๋ก ํ๋์ ์ธ๋ํค๊ฐ ๊ฑธ๋ฆฐ ๊ด๊ณ
2. Many : ๋ค๋๋ค ๊ด๊ณ. ์ค๊ณ ํ ์ด๋ธ์ ํตํด ์ฌ๋ฌ๊ฐ์ ๋ฐ์ดํฐ๋ฅผ ๋ฐ๋ผ๋ณด๊ณ ์์ ๋ ์ฌ์ฉ
3. One (and only one) : ์ผ๋์ผ ๊ด๊ณ์ด์ง๋ง, ํ๋์ row ๋ผ๋ฆฌ๋ง ์ฐ๊ฒฐ๋ ๋ฐ์ดํฐ
4. Zero or one : ์ผ๋์ผ ํน์ ์ผ๋๋ค ๊ด๊ณ๋ฅผ ๊ฐ์ง๊ณ ์์ผ๋ ํ์ ์กฐ๊ฑด์ด ์๋์ ์๋ฏธ
5. One or many : ์ผ๋์ผ ํน์ ๋ค๋๋ค ๊ด๊ณ๋ฅผ ๊ฐ์ง๊ณ ์์์ ์๋ฏธํ๋ฉฐ, ๊ด๊ณ๋ฅผ ๊ฐ์ง๊ณ ์์ผ๋, ์ฐธ์กฐ๋๋ row ๊ฐ๋ค์ด ๋ถ๋ช ํํจ์ ์๋ฏธ
6. Zero or many : ์ฐธ์กฐํ๋ ํ ์ด๋ธ๊ณผ์ ๊ด๊ณ๊ฐ ๋ถ๋ช ํํ ๊ฒฝ์ฐ์ด๋ฉฐ row ์์ฑ๊ฐ์ด ์์์๋, ํ๋์ผ์๋, ์ฌ๋ฌ๊ฐ์ผ์๋ ์๋ ๊ฒฝ์ฐ๋ผ๊ณ ํ ์ ์๋ค.
1. ๋ ผ๋ฆฌ ERD (LOGICAL - ์ค๊ณ๋จ๊ณ) : ์ผ๋ฐ์ ์ผ๋ก ์ฌ์ฉํ๋ ์ฉ์ด, ๊ตฌ์ฒด์ ์ผ๋ก ์์ฑ๋๋ ํธ์ด๋ฉฐ, ์ํฐํฐ์์ ๊ด๊ณ๋ฅผ ํํํ๋ ๋ชจ๋ธ์ด๋ค.
์ฆ, ์ค๊ณ๋จ๊ฒ์์ ์ํฐํฐ์ ์ํฐํฐํ์ , ๊ด๊ณ๋ฅผ ์ ์ํด์ ์ด๋ ํ ์ ๋ณด๋ฅผ ๊ฐ์ฒดํํ ๊ฒ์ธ๊ฐ์ ๋ํ ๊ท์ ์ด๋ค.
2. ๋ฌผ๋ฆฌ ERD (PHYSICAL - ์คํ๋จ๊ณ) : ์ค์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์์คํ ์ ๊ตฌ์ฒด์ ์ธ ๋์์ธ ์์๋ฅผ ๋ด์ ๋ชจ๋ธ
์ฆ, ์ค๊ณ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก DBMS์ ์์ฑ๋ ํ ์ด๋ธ์ ์ค๊ณํ๋๊ฒ์ด๋ฉฐ, ๊ด๊ณ์ ๋ํ ์ ์, ์ปฌ๋ผ๋ณ ๋ฐ์ดํฐํ์ ๋ฐ ์ ์ฝ์กฐ๊ฑด ๋ฑ์ ์์ฑ์ ์ ์ํ๋ฉฐ ์ ๊ทํ๋ฅผ ์ค์ํ๋๊ฒ์ด๋ค.
๋น์๋ณ vs ์๋ณ
- ๋น์๋ณ๊ด๊ณ : ๊ธฐ๋ณธํค์ ์ธ๋ํค๊ฐ ํฌํจ๋์ด ์์ง ์๋ค
- ์๋ณ๊ด๊ณ : ๊ธฐ๋ณธํค์ ์ธ๋ํค๊ฐ ํฌํจ๋์ด ์๋ค.
[ERD ์ค๊ณ ํ๊ธฐ ์ข์ TOOL]
ERDCloud
Draw ERD with your team members. All states are shared in real time. And it's FREE. Database modeling tool.
www.erdcloud.com
'๐ฉ๐ปโ๐ป Developer > DataBase' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[ORACLE] ๋ด์ฅํจ์ (2) | 2023.12.24 |
---|---|
[Oracle] TABLE (0) | 2023.12.14 |
[Oracle] Sql Developer / DataBase ๊ธฐ์ด ๋ค์ง๊ธฐ (0) | 2023.12.13 |
๋๊ธ