๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

๐Ÿ‡ฉ๐Ÿ‡ฆ๐Ÿ‡น๐Ÿ‡ฆ๐Ÿ‡ง๐Ÿ‡ฆ๐Ÿ‡ธ๐Ÿ‡ช

DB ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์„ค๊ณ„(๊ด€๊ณ„์˜ ๋Œ€์‘์ˆ˜, ์ผ๋Œ€์ผ, ์ผ๋Œ€๋‹ค, ๋‹ค๋Œ€๋‹ค, ์•ฝ์„ฑ ๊ฐœ์ฒด์ง‘ํ•ฉ, ๊ฐ•์„ฑ ๊ฐœ์ฒด์ง‘ํ•ฉ)

๊ด€๊ณ„์˜ ๋Œ€์‘์ˆ˜

- ๊ด€๊ณ„์ง‘ํ•ฉ์—์„œ ๊ฐ ๊ฐœ์ฒด๋“ค์ด ์ฐธ์—ฌํ•  ์ˆ˜ ์žˆ๋Š” ๋Œ€์‘์˜ ๊ฐœ์ˆ˜

โ€‹

๋Œ€์‘์ˆ˜์˜ ์ข…๋ฅ˜

 

- ์ผ๋Œ€์ผโ€‹(1:1, one-to-one)

- ์ผ๋Œ€๋‹ค(1:N, one-to-many), ๋‹ค๋Œ€์ผ(N:1, many-to-one)

- ๋‹ค๋Œ€๋‹ค(M:N, many-to-many)

๊ฐ•์„ฑ ๊ฐœ์ฒด์ง‘ํ•ฉ

- ๊ธฐ๋ณธํ‚ค ํ˜•์„ฑ์— ํ•„์š”ํ•œ ๋ชจ๋“  ์†์„ฑ์„ ๊ฐ–๋Š” ๊ฐœ์ฒด์ง‘ํ•ฉ

 

์•ฝ์„ฑ ๊ฐœ์ฒด์ง‘ํ•ฉ

- ๊ธฐ๋ณธํ‚ค ํ˜•์„ฑ์— ํ•„์š”ํ•œ ๋ชจ๋“  ์†์„ฑ์„ ๊ฐ–์ง€ ๋ชปํ•œ ๊ฐœ์ฒด์ง‘ํ•ฉ

โ€‹

์•ฝ์„ฑ ๊ฐœ์ฒด์ง‘ํ•ฉ์€ ๊ฐ•์„ฑ ๊ฐœ์ฒด์ง‘ํ•ฉ์— ํ•ญ์ƒ ์ข…์†๋จ

์•ฝ์„ฑ ๊ฐœ์ฒด์˜ ์กด์žฌ๊ฐ€ ๊ฐ•์„ฑ ๊ฐœ์ฒด์˜ ์กด์žฌ์— ์˜ํ•ด ๊ฒฐ์ •๋จ

โœ” ์ฆ‰, ์•ฝ์„ฑ ๊ฐœ์ฒด ์ง‘ํ•ฉ์€ ๋…๋ฆฝ์ ์œผ๋กœ ์กด์žฌํ•  ์ˆ˜ ์—†์œผ๋ฉฐ ๊ฐ•์„ฑ ๊ฐœ์ฒด ์ง‘ํ•ฉ์ด ์กด์žฌํ•ด์•ผ ์กด์žฌํ•  ์ˆ˜ ์žˆ์Œ

โ€‹

์‹๋ณ„ ๊ด€๊ณ„

- ๊ฐ•์„ฑ ๊ฐœ์ฒด์ง‘ํ•ฉ๊ณผ ์•ฝ์„ฑ ๊ฐœ์ฒด์ง‘ํ•ฉ ์‚ฌ์ด์˜ 1:1 ๋˜๋Š” 1:N ๊ด€๊ณ„

โ€‹

๋ถ€๋ถ„ํ‚ค (partial key)

- ์•ฝ์„ฑ ๊ฐœ์ฒด ์ง‘ํ•ฉ์˜ ์†์„ฑ ์ค‘ ๊ฐ•์„ฑ ๊ฐœ์ฒด ์ง‘ํ•ฉ์˜ ํŠน์ • ๊ฐœ์ฒด์— ๋Œ€ํ•ด์„œ ์œ ์ผํ•œ ๊ฐ’์„ ๊ฐ–๋Š” ์†์„ฑ๋“ค์˜ ์ง‘ํ•ฉ

- ๊ตฌ๋ณ„์ž๋ผ๊ณ ๋„ ํ•จ

โ€‹

์•ฝ์„ฑ ๊ฐœ์ฒด ์ง‘ํ•ฉ์˜ ๊ธฐ๋ณธํ‚ค

 

โ• ์•ฝ์„ฑ ๊ฐœ์ฒด์ง‘ํ•ฉ ์ž์ฒด๋งŒ์œผ๋กœ ๊ธฐ๋ณธํ‚ค๋ฅผ ๊ฐ€์งˆ ์ˆ˜ ์—†์Œ

- ๊ฐ•์„ฑ ๊ฐœ์ฒด ์ง‘ํ•ฉ์˜ ๊ธฐ๋ณธํ‚ค + ์•ฝ์„ฑ ๊ฐœ์ฒด ์ง‘ํ•ฉ์˜ ๋ถ€๋ถ„ํ‚ค๋กœ ๊ตฌ์„ฑ

์˜ˆ) class ๊ฐœ์ฒด์ง‘ํ•ฉ์˜ ๊ธฐ๋ณธํ‚ค

- (course_id, year, semester, division)

course_id : ๊ฐ•์„ฑ ๊ฐœ์ฒด์ง‘ํ•ฉ์ธ course์˜ ๊ธฐ๋ณธํ‚ค

โ€‹

์ผ๋ฐ˜ํ™” ๊ด€๊ณ„

- ์—ฌ๋Ÿฌ ๊ฐœ์ฒด์ง‘ํ•ฉ์˜ ๊ณตํ†ต์ ์ธ ํŠน์ง•์„ ๋ชจ์•„ ์ƒ์œ„ ๊ฐœ์ฒด ์ง‘ํ•ฉ ์ƒ์„ฑ

- ํ•˜์œ„ ๊ฐœ์ฒด์ง‘ํ•ฉ -> ์ƒ์œ„ ๊ฐœ์ฒด์ง‘ํ•ฉ

 

์„ธ๋ถ„ํ™” ๊ด€๊ณ„

- ํ•˜๋‚˜์˜ ๊ฐœ์ฒด์ง‘ํ•ฉ์„ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ํ•˜์œ„ ๊ฐœ์ฒด์ง‘ํ•ฉ์œผ๋กœ ๋ถ„๋ฅ˜

- ์ƒ์œ„ ๊ฐœ์ฒด์ง‘ํ•ฉ -> ํ•˜์œ„ ๊ฐœ์ฒด์ง‘ํ•ฉ

โ€‹