๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
์ž๊ฒฉ์ฆ๐Ÿชช/์ •๋ณด์ฒ˜๋ฆฌ๊ธฐ์‚ฌ ๐Ÿ“š

์ •๋ณด์ฒ˜๋ฆฌ๊ธฐ์‚ฌ ์‹ค๊ธฐ_ํ†ตํ•ฉ๊ตฌํ˜„1๐Ÿ“š

by @ENFJ 2022. 3. 20.

์ฑ•ํ„ฐ1. ์—ฐ๊ณ„ ๋ฐ์ดํ„ฐ ๊ตฌ์„ฑ

 

์—ฐ๊ณ„ ์š”๊ตฌ์‚ฌํ•ญ ๋ถ„์„์€ ์ค‘์š”๋„๊ฐ€ ๋†’์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์–ด๋–ค ๊ธฐ๋ฒ•์ธ์ง€ ์ดํ•ดํ•˜๊ธฐ.


์—ฐ๊ณ„ ์š”๊ตฌ์‚ฌํ•ญ ๋ถ„์„

: ์„œ๋กœ ๋‹ค๋ฅธ ๋‘ ์‹œ์Šคํ…œ, ์žฅ์น˜, ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ์ด์–ด์ฃผ๋Š” ์ค‘๊ณ„ ์—ญํ• ์„ ํ•˜๋Š” ์—ฐ๊ณ„ ์‹œ์Šคํ…œ๊ณผ ๊ด€๋ จ๋œ ์š”๊ตฌ์‚ฌํ•ญ์„ ๋ถ„์„ํ•˜๋Š” ๊ณผ์ •์ด๋‹ค.

 

์—ฐ๊ณ„ ์š”๊ตฌ์‚ฌํ•ญ ๋ถ„์„์€ ์‚ฌ์šฉ์ž ์ธํ„ฐ๋ทฐ ๋ฐ ๋ฉด๋‹ด์„ ํ†ตํ•ด ์‹๋ณ„๋˜๊ณ  ์‹œ์Šคํ…œ ๊ตฌ์„ฑ๋„, ํ…Œ์ด๋ธ” ์ •์˜์„œ, ์ฝ”๋“œ ์ •์˜์„œ ๋“ฑ์„ ์ฐธ๊ณ ํ•œ๋‹ค.

 

์—ฐ๊ณ„ ์š”๊ตฌ์‚ฌํ•ญ ๋ถ„์„๊ธฐ๋ฒ•

1) ์ธํ„ฐ๋ทฐ

2) ์ฒดํฌ๋ฆฌ์ŠคํŠธ

3) ์„ค๋ฌธ์ง€

4) ๋ธํŒŒ์ด ๊ธฐ๋ฒ• : ์ „๋ฌธ๊ฐ€์˜ ๊ฒฝํ—˜์  ์ง€์‹์„ ํ†ตํ•œ ๋ถ„์„ ๊ธฐ๋ฒ•./ ์—…๋ฌด ์ „๋ฌธ๊ฐ€ ๋“ฑ ๊ฐ ๋ถ„์•ผ ์ „๋ฌธ๊ฐ€๋กœ ๊ตฌ์„ฑ

5) ๋ธŒ๋ ˆ์ธ ์Šคํ† ๋ฐ : ์†Œ์†๋œ ์ธ์›๋“ค์ด ์ž๋ฐœ์ ์œผ๋กœ ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ์ œ์‹œ๋œ ์•„์ด๋””์–ด ๋ชฉ๋ก์„ ํ†ตํ•ด ๋ถ„์„ํ•˜๋Š” ๊ธฐ๋ฒ•.

 


๋ฌธ์ œ

 

1. ์„œ๋กœ ๋‹ค๋ฅธ ๋‘ ์‹œ์Šคํ…œ, ์žฅ์น˜, ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ์ด์–ด์ฃผ๋Š” ์ค‘๊ณ„ ์—ญํ• ์„ ํ•˜๋Š” ์—ฐ๊ณ„ ์‹œ์Šคํ…œ๊ณผ ๊ด€๋ จ๋œ ์š”๊ตฌ์‚ฌํ•ญ์„ ๋ถ„์„ํ•˜๋Š” ๊ธฐ๋ฒ•์ค‘ ์—…๋ฌด ์ „๋ฌธ๊ฐ€๋“ฑ ๊ฐ ๋ถ„์•ผ ์ „๋ฌธ๊ฐ€์˜ ๊ฒฝํ—˜์  ์ง€์‹์„ ํ†ตํ•œ ๋ถ„์„ ๊ธฐ๋ฒ•์€ ๋ฌด์—‡์ธ๊ฐ€?

=> ๋ธํŒŒ์ด ๊ธฐ๋ฒ•

 

2. ์—ฐ๊ณ„ ์š”๊ตฌ์‚ฌํ•ญ ๋ถ„์„ ๊ธฐ๋ฒ•

์‚ฌ์šฉ์ž ๋ฉด๋‹ด์„ ํ†ตํ•ด ์—ฐ๊ณ„ ์š”๊ตฌ์‚ฌํ•ญ์„ ๋ถ„์„ํ•˜๋Š” ๊ธฐ๋ฒ•: ์ธํ„ฐ๋ทฐ

์†Œ์†๋œ ์ธ์›๋“ค์ด ์ž๋ฐœ์ ์œผ๋กœ ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ์ œ์‹œ๋œ ์•„์ด๋””์–ด ๋ชฉ๋ก์„ ํ†ตํ•ด ์—ฐ๊ณ„ ์š”๊ตฌ์‚ฌํ•ญ์„ ๋ถ„์„ํ•˜๋Š” ๊ธฐ๋ฒ•: ๋ธŒ๋ ˆ์ธ ์Šคํ† ๋ฐ

 

3. ์—ฐ๊ณ„ ์š”๊ตฌ์‚ฌํ•ญ์— ๋Œ€ํ•œ ์ •ํ™•ํ•œ ๋ถ„์„์„ ์œ„ํ•ด ๋‹ค์–‘ํ•œ ์—ฐ๊ณ„ ์š”๊ตฌ์‚ฌํ•ญ ๋ถ„์„ ์ฐธ๊ณ ๋ฌธ์„œ๋ฅผ ํ™œ์šฉํ•œ๋‹ค.

์—ฐ๊ณ„ ์š”๊ตฌ์‚ฌํ•ญ ๋ถ„์„ ์ฐธ๊ณ ๋ฌธ์„œ ์ค‘ ๊ฐœ์ฒด ์ •์˜์„œ๋ž€ ๋ฌด์—‡์ธ์ง€ ์“ฐ์‹œ์˜ค.

: ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ฐœ๋… ๋ชจ๋ธ๋ง ๋‹จ๊ณ„์—์„œ ๋„์ถœํ•œ ๊ฐœ์ฒด์˜ ํƒ€์ž…๊ณผ ๊ด€๋ จ ์†์„ฑ, ์‹๋ณ„์ž ๋“ฑ์˜ ์ •๋ณด๋ฅผ ๊ฐœ๊ด„์ ์œผ๋กœ ๋ช…์„ธํ™”ํ•œ ์ •์˜์„œ

 

4. ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ตฌ๋ถ„ํ•˜๊ธฐ ์œ„ํ•œ ์‚ฌ์šฉ๋˜๊ณ , ๋ช…๋ช… ํ‘œ์ค€์— ๋งž๊ฒŒ ๋ถ€์—ฌ. ์ผ๋ฐ˜์ ์œผ๋กœ ์ธํ„ฐํŽ˜์ด์Šค ์‹๋ณ„์„ฑ์„ ๊ฐ•ํ™”ํ•˜๊ธฐ ์œ„ํ•ด ์—…๋ฌด ๋ถ„๋ฅ˜ ์ฝ”๋“œ์™€ ์—ฐ์† ๋ฒˆํ˜ธ๋ฅผ ๊ฐ™์ด ํ™œ์šฉ.

=> ์ธํ„ฐํŽ˜์ด์Šค ID

 

5. ์—ฐ๊ณ„ ์‹œ์Šคํ…œ์˜ ๊ตฌ์„ฑ์š”์†Œ ์ค‘ ์†ก์‹ ์‹œ์Šคํ…œ๊ณผ ์ˆ˜์‹ ์‹œ์Šคํ…œ ์‚ฌ์ด์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์†ก์ˆ˜์‹ ํ•˜๊ณ  ์—ฐ๊ณ„๋ฐ์ดํ„ฐ์˜ ์†ก์ˆ˜์‹  ํ˜„ํ™ฉ์„ ๋ชจ๋‹ˆํ„ฐ๋ง ํ•˜๋Š” ์‹œ์Šคํ…œ์œผ๋กœ ์—ฐ๊ณ„ ๋ฐ์ดํ„ฐ์˜ ๋ณด์•ˆ ๊ฐ•ํ™”๋ฅผ ์ง€์›ํ•˜๋Š” ์‹œ์Šคํ…œ์€?

=> ์ค‘๊ณ„ ์„œ๋ฒ„

 


๋ณต์Šต

1. ๋ฐ์ดํ„ฐ ์ •์˜์–ด(DDL)์€ ๋ฐ์ดํ„ฐ๋ฅผ ์ •์˜ํ•˜๋Š” ์–ธ์–ด๋กœ์„œ  '๋ฐ์ดํ„ฐ๋ฅผ ๋‹ด๋Š” ๊ทธ๋ฆ‡'์„ ์ •์˜ํ•˜๋Š” ์–ธ์–ด์ด๋‹ค.

2. ๊ธฐ๋ณธ ํ‚ค(primary key) ๋Š” ํ…Œ์ด๋ธ”์˜ ๊ฐ ํŠœํ”Œ๋“ค์„ ๊ณ ์œ ํ•˜๊ฒŒ ์‹๋ณ„ํ•˜๋Š” ํ‚ค์ด๋‹ค.

3. ์™ธ๋ž˜ํ‚ค(Foreign key) ๋Š” ํ•œ ๋ฆด๋ ˆ์ด์…˜์˜ ์ปฌ๋Ÿผ์ด ๋‹ค๋ฅธ ๋ฆด๋ ˆ์ด์…˜์˜ ๊ธฐ๋ณธํ‚ค๋กœ ์ด์šฉ๋˜๋Š” ํ‚ค์ด๋‹ค.

4. ๋ฐ˜ ์ •๊ทœํ™” ๋Š” ์ •๊ทœํ™”๋œ  ์—”ํ‹ฐํ‹ฐ, ์†์„ฑ, ๊ด€๊ณ„์— ๋Œ€ํ•ด ์„ฑ๋Šฅ ํ–ฅ์ƒ๊ณผ ๊ฐœ๋ฐœ ์šด์˜์˜ ๋‹จ์ˆœํ™”๋ฅผ ์œ„ํ•ด ์ค‘๋ณต, ํ†ตํ•ฉ, ๋ถ„๋ฆฌ ๋“ฑ์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๋ง์˜ ๊ธฐ๋ฒ•์ด๋‹ค.

5. ์Šˆํผ ํƒ€์ž… ์€ ๋ชจ๋“  ์„œ๋ธŒํƒ€์ž…์œผ๋กœ ์ƒ์†(inheritance) ๋˜๋Š” ๊ณตํ†ต ์†์„ฑ์ด๋‹ค.

6. ์„œ๋ธŒ ํƒ€์ž… ์€ ๊ฐœ์ฒด(Entity)์˜ ์ „์ฒด ์ง‘ํ•ฉ์—์„œ ์ผ๋ถ€๋งŒ ๋ชจ์•„๋†“์€ ๋ถ€๋ถ„ ์†์„ฑ์ด๋‹ค.

7. ์ธ๋ฑ์Šค(index)์€ ๊ฒ€์ƒ‰ ์—ฐ์‚ฐ์˜ ์ตœ์ ํ™”๋ฅผ ์œ„ํ•ด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋‚ด ์—ด์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ๊ตฌ์„ฑํ•œ ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ์ด๋‹ค.

8. XP ๋Š” ์˜์‚ฌ์†Œํ†ต ๊ฐœ์„ ๊ณผ ์ฆ‰๊ฐ์  ํ”ผ๋“œ๋ฐฑ์œผ๋กœ ์†Œํ”„ํŠธ์›จ์–ด ํ’ˆ์งˆ์„ ๋†’์ด๊ธฐ ์œ„ํ•œ ๋ฐฉ๋ฒ•๋ก ์œผ๋กœ 5๊ฐ€์ง€ ๊ฐ€์น˜์™€ 12๊ฐœ์˜ ์‹ค์ฒœ ํ•ญ๋ชฉ์ด ์กด์žฌํ•œ๋‹ค.