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

DB

4์žฅ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๋ง

 

reference: ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ฐœ๋ก  2ํŒ


01. ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๋ง๊ณผ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ์˜ ๊ฐœ๋…

๋ฐ์ดํ„ฐ ๋ชจ๋ธ๋ง(data modeling)

  • ํ˜„์‹ค ์„ธ๊ณ„์— ์กด์žฌํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์ปดํ“จํ„ฐ ์„ธ๊ณ„์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋กœ ์˜ฎ๊ธฐ๋Š” ๋ณ€ํ™˜ ๊ณผ์ •
  • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์„ค๊ณ„์˜ ํ•ต์‹ฌ ๊ณผ์ •

2๋‹จ๊ณ„ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๋ง

  • ๊ฐœ๋…์  ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๋ง(conceptual modeling)
    • ํ˜„์‹ค ์„ธ๊ณ„์˜ ์ค‘์š” ๋ฐ์ดํ„ฐ๋ฅผ ์ถ”์ถœํ•˜์—ฌ ๊ฐœ๋… ์„ธ๊ณ„๋กœ ์˜ฎ๊ธฐ๋Š” ์ž‘์—…
  • ๋…ผ๋ฆฌ์  ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๋ง(logical modeling)
    • ๊ฐœ๋… ์„ธ๊ณ„์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ €์žฅํ•˜๋Š” ๊ตฌ์กฐ๋กœ ํ‘œํ˜„ํ•˜๋Š” ์ž‘์—…

๋ฐ์ดํ„ฐ ๋ชจ๋ธ(data model)

  • ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๋ง์˜ ๊ฒฐ๊ณผ๋ฌผ์„ ํ‘œํ˜„ํ•˜๋Š” ๋„๊ตฌ
  • ๊ฐœ๋…์  ๋ฐ์ดํ„ฐ ๋ชจ๋ธ
    • ์‚ฌ๋žŒ์˜ ๋จธ๋ฆฌ๋กœ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋„๋ก ํ˜„์‹ค ์„ธ๊ณ„๋ฅผ ๊ฐœ๋…์  ๋ชจ๋ธ๋งํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ๊ฐœ๋…์  ๊ตฌ์กฐ๋กœ ํ‘œํ˜„ํ•˜๋Š” ๋„๊ตฌ
    • DBMS ๋…๋ฆฝ์ 
    • ์˜ˆ) ๊ฐœ์ฒด-๊ด€๊ณ„ ๋ชจ๋ธ, IE, Baker
  • ๋…ผ๋ฆฌ์  ๋ฐ์ดํ„ฐ ๋ชจ๋ธ
    • ๊ฐœ๋…์  ๊ตฌ์กฐ๋ฅผ ๋…ผ๋ฆฌ์  ๋ชจ๋ธ๋งํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ๋…ผ๋ฆฌ์  ๊ตฌ์กฐ๋กœ ํ‘œํ˜„ํ•˜๋Š” ๋„๊ตฌ
    • DBMS ์ข…์†์ 
    • ์˜ˆ) ๊ด€๊ณ„ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ

02. ๊ฐœ์ฒด-๊ด€๊ณ„ ๋ชจ๋ธ

๊ฐœ์ฒด-๊ด€๊ณ„ ๋ชจ๋ธ(E-R model; Entity-Relationship model)

  • ํ”ผํ„ฐ ์ฒธ(Peter Chen)์ด ์ œ์•ˆํ•œ ๊ฐœ๋…์  ๋ฐ์ดํ„ฐ ๋ชจ๋ธ
  • ๊ฐœ์ฒด์™€ ๊ฐœ์ฒด ๊ฐ„์˜ ๊ด€๊ณ„๋ฅผ ์ด์šฉํ•ด ํ˜„์‹ค ์„ธ๊ณ„๋ฅผ ๊ฐœ๋…์  ๊ตฌ์กฐ๋กœ ํ‘œํ˜„
  • ํ•ต์‹ฌ ์š”์†Œ : ๊ฐœ์ฒด, ์†์„ฑ, ๊ด€๊ณ„

๊ฐœ์ฒด-๊ด€๊ณ„ ๋‹ค์ด์–ด๊ทธ๋žจ(E-R diagram)

  • E-R ๋‹ค์ด์–ด๊ทธ๋žจ
  • ๊ฐœ์ฒด - ๊ด€๊ณ„ ๋ชจ๋ธ์„ ์ด์šฉํ•ด ํ˜„์‹ค ์„ธ๊ณ„๋ฅผ ๊ฐœ๋…์ ์œผ๋กœ ๋ชจ๋ธ๋งํ•œ ๊ฒฐ๊ณผ๋ฌผ์„ ๊ทธ๋ฆผ์œผ๋กœ ํ‘œํ˜„ํ•œ ๊ฒƒ

02-1. ๊ฐœ์ฒด(entity)

  • ํ˜„์‹ค ์„ธ๊ณ„์—์„œ ์กฐ์ง์„ ์šด์˜ํ•˜๋Š” ๋ฐ ๊ผญ ํ•„์š”ํ•œ ์‚ฌ๋žŒ์ด๋‚˜ ์‚ฌ๋ฌผ๊ณผ ๊ฐ™์ด ๊ตฌ๋ณ„๋˜๋Š” ๋ชจ๋“  ๊ฒƒ
  • ์ €์žฅํ•  ๊ฐ€์น˜๊ฐ€ ์žˆ๋Š” ์ค‘์š” ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ์‚ฌ๋žŒ์ด๋‚˜ ์‚ฌ๋ฌผ, ๊ฐœ๋…, ์‚ฌ๊ฑด ๋“ฑ. ๋ฌผ๋ฆฌ์ ์œผ๋กœ ์กด์žฌํ•˜์ง€ ์•Š์•„๋„ ๋จ.
  • ๋‹ค๋ฅธ ๊ฐœ์ฒด์™€ ๊ตฌ๋ณ„๋˜๋Š” ์ด๋ฆ„์„ ๊ฐ€์ง€๊ณ  ์žˆ๊ณ , ๊ฐ ๊ฐœ์ฒด๋งŒ์˜ ๊ณ ์œ ํ•œ ํŠน์„ฑ์ด๋‚˜ ์ƒํƒœ, ์ฆ‰ ์†์„ฑ์„ ํ•˜๋‚˜ ์ด์ƒ ๊ฐ€์ง€๊ณ  ์žˆ์Œ
  • ์˜ˆ) ์„œ์ ์— ํ•„์š”ํ•œ ๊ฐœ์ฒด : ๊ณ ๊ฐ, ์ฑ…
  • ์˜ˆ) ํ•™๊ต์— ํ•„์š”ํ•œ ๊ฐœ์ฒด : ํ•™๊ณผ, ๊ณผ๋ชฉ
  • ํŒŒ์ผ ๊ตฌ์กฐ์˜ ๋ ˆ์ฝ”๋“œ(record)์™€ ๋Œ€์‘๋จ
  • E-R ๋‹ค์ด์–ด๊ทธ๋žจ์—์„œ ์‚ฌ๊ฐํ˜•์œผ๋กœ ํ‘œํ˜„ํ•˜๊ณ  ์‚ฌ๊ฐํ˜• ์•ˆ์— ์ด๋ฆ„์„ ํ‘œ๊ธฐ

02-2.

๊ฐœ์ฒด ํƒ€์ž…(entity type)

  • ๊ฐœ์ฒด๋ฅผ ๊ณ ์œ ์˜ ์ด๋ฆ„๊ณผ ์†์„ฑ๋“ค๋กœ ์ •์˜ํ•œ ๊ฒƒ
  • ํŒŒ์ผ ๊ตฌ์กฐ์˜ ๋ ˆ์ฝ”๋“œ ํƒ€์ž…(record type)์— ๋Œ€์‘๋จ

๊ฐœ์ฒด ์ธ์Šคํ„ด์Šค(entity instance)

  • ๊ฐœ์ฒด๋ฅผ ๊ตฌ์„ฑํ•˜๊ณ  ์žˆ๋Š” ์†์„ฑ์ด ์‹ค์ œ ๊ฐ’์„ ๊ฐ€์ง์œผ๋กœ์จ ์‹ค์ฒดํ™”๋œ ๊ฐœ์ฒด
  • ๊ฐœ์ฒด ์–ด์ปค๋Ÿฐ์Šค(entity occurrence)๋ผ๊ณ ๋„ ํ•จ
  • ํŒŒ์ผ ๊ตฌ์กฐ์˜ ๋ ˆ์ฝ”๋“œ ์ธ์Šคํ„ด์Šค(record instance)์— ๋Œ€์‘๋จ

๊ฐœ์ฒด ์ง‘ํ•ฉ(entity set)

  • ํŠน์ • ๊ฐœ์ฒด ํƒ€์ž…์— ๋Œ€ํ•œ ๊ฐœ์ฒด ์ธ์Šคํ„ด์Šค๋“ค์„ ๋ชจ์•„๋†“์€ ๊ฒƒ

02-3. ์†์„ฑ(attribute)

  • ๊ฐœ์ฒด๋‚˜ ๊ด€๊ณ„๊ฐ€ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ๊ณ ์œ ์˜ ํŠน์„ฑ
  • ์˜๋ฏธ ์žˆ๋Š” ๋ฐ์ดํ„ฐ์˜ ๊ฐ€์žฅ ์ž‘์€ ๋…ผ๋ฆฌ์  ๋‹จ์œ„
  • ํŒŒ์ผ ๊ตฌ์กฐ์˜ ํ•„๋“œ(field)์™€ ๋Œ€์‘๋จ
  • E-R ๋‹ค์ด์–ด๊ทธ๋žจ์—์„œ ํƒ€์›์œผ๋กœ ํ‘œํ˜„ํ•˜๊ณ  ํƒ€์› ์•ˆ์— ์ด๋ฆ„์„ ํ‘œ๊ธฐ

#1 ๋‹จ์ผ ๊ฐ’ ์†์„ฑ(single-valued attribute)

  • ๊ฐ’์„ ํ•˜๋‚˜๋งŒ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋Š” ์†์„ฑ
  • ์˜ˆ) ๊ณ ๊ฐ ๊ฐœ์ฒด์˜ ์ด๋ฆ„, ์ ๋ฆฝ๊ธˆ ์†์„ฑ

#2 ๋‹ค์ค‘ ๊ฐ’ ์†์„ฑ(multi-valued attribute)

  • ๊ฐ’์„ ์—ฌ๋Ÿฌ ๊ฐœ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋Š” ์†์„ฑ
  • ์˜ˆ) ๊ณ ๊ฐ ๊ฐœ์ฒด์˜ ์—ฐ๋ฝ์ฒ˜ ์†์„ฑ
  • ์˜ˆ) ์ฑ… ๊ฐœ์ฒด์˜ ์ €์ž ์†์„ฑ
  • E-R ๋‹ค์ด์–ด๊ทธ๋žจ์—์„œ ์ด์ค‘ ํƒ€์›์œผ๋กœ ํ‘œํ˜„

#3 ๋‹จ์ˆœ ์†์„ฑ

  • ์˜๋ฏธ๋ฅผ ๋”๋Š” ๋ถ„ํ•ดํ•  ์ˆ˜ ์—†๋Š” ์†์„ฑ
  • ์˜ˆ) ๊ณ ๊ฐ ๊ฐœ์ฒด์˜ ์ ๋ฆฝ๊ธˆ ์†์„ฑ
  • ์˜ˆ) ์ฑ… ๊ฐœ์ฒด์˜ ์ด๋ฆ„, ISBN, ๊ฐ€๊ฒฉ ์†์„ฑ

#4 ๋ณตํ•ฉ ์†์„ฑ

  • ์˜๋ฏธ๋ฅผ ๋ถ„ํ•ดํ•  ์ˆ˜ ์žˆ๋Š” ์†์„ฑ
  • ์˜ˆ) ๊ณ ๊ฐ ๊ฐœ์ฒด์˜ ์ฃผ์†Œ ์†์„ฑ – ๋„, ์‹œ, ๋™, ์šฐํŽธ๋ฒˆํ˜ธ ๋“ฑ์œผ๋กœ ์˜๋ฏธ๋ฅผ ์„ธ๋ถ„ํ™”ํ•  ์ˆ˜ ์žˆ์Œ
  • ์˜ˆ) ๊ณ ๊ฐ ๊ฐœ์ฒด์˜ ์ƒ๋…„์›”์ผ ์†์„ฑ – ์—ฐ, ์›”, ์ผ๋กœ ์˜๋ฏธ๋ฅผ ์„ธ๋ถ„ํ™”ํ•  ์ˆ˜ ์žˆ์Œ

#5 ์œ ๋„ ์†์„ฑ

  • ๊ธฐ์กด์˜ ๋‹ค๋ฅธ ์†์„ฑ์˜ ๊ฐ’์—์„œ ์œ ๋„๋˜์–ด ๊ฒฐ์ •๋˜๋Š” ์†์„ฑ
  • ๊ฐ’์ด ๋ณ„๋„๋กœ ์ €์žฅ๋˜์ง€ ์•Š์Œ
  • ์˜ˆ) ์ฑ… ๊ฐœ์ฒด์˜ ๊ฐ€๊ฒฉ๊ณผ ํ• ์ธ์œจ ์†์„ฑ์œผ๋กœ ๊ณ„์‚ฐ๋˜๋Š” ํŒ๋งค๊ฐ€๊ฒฉ ์†์„ฑ
  • ์˜ˆ) ๊ณ ๊ฐ ๊ฐœ์ฒด์˜ ์ถœ์ƒ์—ฐ๋„ ์†์„ฑ์œผ๋กœ ๊ณ„์‚ฐ๋˜๋Š” ๋‚˜์ด ์†์„ฑ
  • E-R ๋‹ค์ด์–ด๊ทธ๋žจ์—์„œ ์ ์„  ํƒ€์›์œผ๋กœ ํ‘œํ˜„

#6 ๋„ ์†์„ฑ (null attribute)

๋„ ๊ฐ’์ด ํ—ˆ์šฉ๋˜๋Š” ์†์„ฑ

  • null ๊ฐ’: ์•„์ง ๊ฒฐ์ •๋˜์ง€ ์•Š์•˜๊ฑฐ๋‚˜ ๋ชจ๋ฅด๋Š” ๊ฐ’ ๋˜๋Š” ์กด์žฌํ•˜์ง€ ์•Š๋Š” ๊ฐ’์œผ๋กœ, ๊ณต๋ฐฑ์ด๋‚˜ 0๊ณผ๋Š” ์˜๋ฏธ๊ฐ€ ๋‹ค๋ฆ„
  • ์˜ˆ) ๋“ฑ๊ธ‰ ์†์„ฑ์ด ๋„ ๊ฐ’: ๋“ฑ๊ธ‰์ด ์•„์ง ๊ฒฐ์ •๋˜์ง€ ์•Š์•˜์Œ์„ ์˜๋ฏธ

#7 ํ‚ค ์†์„ฑ(key attribute)

  • ๊ฐ ๊ฐœ์ฒด ์ธ์Šคํ„ด์Šค๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋Š” ์†์„ฑ
  • ๋ชจ๋“  ๊ฐœ์ฒด ์ธ์Šคํ„ด์Šค์˜ ํ‚ค ์†์„ฑ ๊ฐ’์ด ๋‹ค๋ฆ„
  • ๋‘˜ ์ด์ƒ์˜ ์†์„ฑ๋“ค๋กœ ๊ตฌ์„ฑ๋˜๊ธฐ๋„ ํ•จ
  • ์˜ˆ) ๊ณ ๊ฐ ๊ฐœ์ฒด์˜ ๊ณ ๊ฐ์•„์ด๋”” ์†์„ฑ
  • E-R ๋‹ค์ด์–ด๊ทธ๋žจ์—์„œ ๋ฐ‘์ค„๋กœ ํ‘œํ˜„

02-4. ๊ด€๊ณ„(relationship)

๊ฐœ์ฒด์™€ ๊ฐœ์ฒด๊ฐ€ ๋งบ๊ณ  ์žˆ๋Š” ์˜๋ฏธ ์žˆ๋Š” ์—ฐ๊ด€์„ฑ

  • ๊ฐœ์ฒด ์ง‘ํ•ฉ๋“ค ์‚ฌ์ด์˜ ๋Œ€์‘ ๊ด€๊ณ„, ์ฆ‰ ๋งคํ•‘(mapping)์„ ์˜๋ฏธ
  • ์˜ˆ) ๊ณ ๊ฐ ๊ฐœ์ฒด์™€ ์ฑ… ๊ฐœ์ฒด ๊ฐ„์˜ ๊ตฌ๋งค ๊ด€๊ณ„ “๊ณ ๊ฐ์€ ์ฑ…์„ ๊ตฌ๋งคํ•œ๋‹ค”์™€ ๊ฐ™์ด ๋™์‚ฌ์˜ ์—ญํ• 
  • E-R ๋‹ค์ด์–ด๊ทธ๋žจ์—์„œ ๋งˆ๋ฆ„๋ชจ๋กœ ํ‘œํ˜„

02-5. ๊ด€๊ณ„์˜ ์œ ํ˜•

๊ด€๊ณ„์— ์ฐธ์—ฌํ•˜๋Š” ๊ฐœ์ฒด ํƒ€์ž…์˜ ์ˆ˜ ๊ธฐ์ค€์œผ๋กœ๋Š”,

  • ์ดํ•ญ ๊ด€๊ณ„ : ๊ฐœ์ฒด ํƒ€์ž… ๋‘ ๊ฐœ๊ฐ€ ๋งบ๋Š” ๊ด€๊ณ„
  • ์‚ผํ•ญ ๊ด€๊ณ„ : ๊ฐœ์ฒด ํƒ€์ž… ์„ธ ๊ฐœ๊ฐ€ ๋งบ๋Š” ๊ด€๊ณ„
  • ์ˆœํ™˜ ๊ด€๊ณ„ : ๊ฐœ์ฒด ํƒ€์ž… ํ•˜๋‚˜๊ฐ€ ์ž๊ธฐ ์ž์‹ ๊ณผ ๋งบ๋Š” ๊ด€๊ณ„

๋งคํ•‘ ์นด๋””๋„๋ฆฌํ‹ฐ ๊ธฐ์ค€์œผ๋กœ๋Š”,

๋งคํ•‘ ์นด๋””๋„๋ฆฌํ‹ฐ(mapping cardinality): ๊ด€๊ณ„๋ฅผ ๋งบ๋Š” ๋‘ ๊ฐœ์ฒด ์ง‘ํ•ฉ์—์„œ, ๊ฐ ๊ฐœ์ฒด ์ธ์Šคํ„ด์Šค๊ฐ€ ์—ฐ๊ด€์„ฑ์„ ๋งบ๊ณ  ์žˆ๋Š” ์ƒ๋Œ€ ๊ฐœ์ฒด ์ง‘ํ•ฉ์˜ ์ธ์Šคํ„ด์Šค ๊ฐœ์ˆ˜

  • ์ผ๋Œ€์ผ(1:1) ๊ด€๊ณ„
    • ๊ฐœ์ฒด A์˜ ๊ฐ ๊ฐœ์ฒด ์ธ์Šคํ„ด์Šค๊ฐ€ ๊ฐœ์ฒด B์˜ ๊ฐœ์ฒด ์ธ์Šคํ„ด์Šค **ํ•˜๋‚˜**์™€ ๊ด€๊ณ„๋ฅผ ๋งบ์„ ์ˆ˜ ์žˆ๊ณ , ๊ฐœ์ฒด B์˜ ๊ฐ ๊ฐœ์ฒด ์ธ์Šคํ„ด์Šค๋„ ๊ฐœ์ฒด A์˜ ๊ฐœ์ฒด ์ธ์Šคํ„ด์Šค **ํ•˜๋‚˜**์™€ ๊ด€๊ณ„๋ฅผ ๋งบ์„ ์ˆ˜ ์žˆ์Œ
  • ์ผ๋Œ€๋‹ค(1:n)๊ด€๊ณ„
    • ๊ฐœ์ฒด A์˜ ๊ฐ ๊ฐœ์ฒด ์ธ์Šคํ„ด์Šค๊ฐ€ ๊ฐœ์ฒด B์˜ ๊ฐœ์ฒด ์ธ์Šคํ„ด์Šค **์—ฌ๋Ÿฌ ๊ฐœ**์™€ ๊ด€๊ณ„๋ฅผ ๋งบ์„ ์ˆ˜ ์žˆ์ง€๋งŒ, ๊ฐœ์ฒด B์˜ ๊ฐ ๊ฐœ์ฒด ์ธ์Šคํ„ด์Šค๋Š” ๊ฐœ์ฒด A์˜ ๊ฐœ์ฒด ์ธ์Šคํ„ด์Šค **ํ•˜๋‚˜**์™€ ๊ด€๊ณ„๋ฅผ ๋งบ์„ ์ˆ˜ ์žˆ์Œ
  • ๋‹ค๋Œ€๋‹ค(n:m) ๊ด€๊ณ„
    • ๊ฐœ์ฒด A์˜ ๊ฐ ๊ฐœ์ฒด ์ธ์Šคํ„ด์Šค๊ฐ€ ๊ฐœ์ฒด B์˜ ๊ฐœ์ฒด ์ธ์Šคํ„ด์Šค **์—ฌ๋Ÿฌ ๊ฐœ**์™€ ๊ด€๊ณ„๋ฅผ ๋งบ์„ ์ˆ˜ ์žˆ๊ณ , ๊ฐœ์ฒด B์˜ ๊ฐ ๊ฐœ์ฒด ์ธ์Šคํ„ด์Šค๋„ ๊ฐœ์ฒด A์˜ ๊ฐœ์ฒด ์ธ์Šคํ„ด์Šค ์—ฌ๋Ÿฌ ๊ฐœ์™€ ๊ด€๊ณ„๋ฅผ ๋งบ์„ ์ˆ˜ ์žˆ์Œ

02-6. ๊ด€๊ณ„์˜ ์ฐธ์—ฌ ํŠน์„ฑ

  • ํ•„์ˆ˜์  ์ฐธ์—ฌ(์ „์ฒด ์ฐธ์—ฌ): ๋ชจ๋“  ๊ฐœ์ฒด ์ธ์Šคํ„ด์Šค๊ฐ€ ๊ด€๊ณ„์— ๋ฐ˜๋“œ์‹œ ์ฐธ์—ฌํ•ด์•ผ ๋˜๋Š” ๊ฒƒ์„ ์˜๋ฏธ
    • E-R ๋‹ค์ด์–ด๊ทธ๋žจ์—์„œ ์ด์ค‘์„ ์œผ๋กœ ํ‘œํ˜„
    • ์˜ˆ) ๋ชจ๋“  ๊ณ ๊ฐ์€ ์ฑ…์„ ๋ฐ˜๋“œ์‹œ ๊ตฌ๋งคํ•ด์•ผ ํ•จ. ๊ณ ๊ฐ ๊ฐœ์ฒด๊ฐ€ ์ฑ… ๊ฐœ์ฒด์™€์˜ ๊ตฌ๋งค ๊ด€๊ณ„์— ํ•„์ˆ˜์ ์œผ๋กœ ์ฐธ์—ฌ
    • ์˜ˆ) ๋ชจ๋“  ์‚ฌ์›์€ ๋ถ€์„œ์— ๋“ค์–ด์•ผ ํ•จ. ์‚ฌ์›์€ ์†Œ์† ๊ด€๊ณ„์—์„œ ํ•„์ˆ˜์  ์ฐธ์—ฌ
  • ์„ ํƒ์  ์ฐธ์—ฌ(๋ถ€๋ถ„ ์ฐธ์—ฌ)
    • ๊ฐœ์ฒด ์ธ์Šคํ„ด์Šค ์ค‘ ์ผ๋ถ€๋งŒ ๊ด€๊ณ„์— ์ฐธ์—ฌํ•ด๋„ ๋˜๋Š” ๊ฒƒ์„ ์˜๋ฏธ
    • ์˜ˆ) ๊ณ ๊ฐ์ด ๊ตฌ๋งคํ•˜์ง€ ์•Š์€ ์ฑ…์ด ์กด์žฌํ•  ์ˆ˜ ์žˆ์Œ. ์ฑ… ๊ฐœ์ฒด๊ฐ€ ๊ณ ๊ฐ ๊ฐœ์ฒด์™€์˜ ๊ตฌ๋งค ๊ด€๊ณ„์— ์„ ํƒ์ ์œผ๋กœ ์ฐธ์—ฌ
    • ์˜ˆ) ์‚ฌ์› ํ•œ ๋ช… ์—†๋Š” ์‹ ์„ค ๋ถ€์„œ๊ฐ€ ์กด์žฌํ•  ์ˆ˜ ์žˆ์Œ. ๋ถ€์„œ๋Š” ์†Œ์† ๊ด€๊ณ„์— ์„ ํƒ์  ์ฐธ์—ฌ

02-7. ๊ด€๊ณ„์˜ ์ข…์†์„ฑ

  • ์•ฝํ•œ ๊ฐœ์ฒด(weak entity) : ๋‹ค๋ฅธ ๊ฐœ์ฒด์˜ ์กด์žฌ ์—ฌ๋ถ€์— ์˜์กด์ ์ธ ๊ฐœ์ฒด
  • ๊ฐ•ํ•œ ๊ฐœ์ฒด(strong entity) : ๋‹ค๋ฅธ ๊ฐœ์ฒด์˜ ์กด์žฌ ์—ฌ๋ถ€๋ฅผ ๊ฒฐ์ •ํ•˜๋Š” ๊ฐœ์ฒด
  • ํŠน์ง•
    • ๊ฐ•ํ•œ ๊ฐœ์ฒด์™€ ์•ฝํ•œ ๊ฐœ์ฒด๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ ์ผ๋Œ€๋‹ค์˜ ๊ด€๊ณ„๋ฅผ ๊ฐ€์ง€๊ณ , ์•ฝํ•œ ๊ฐœ์ฒด๋Š” ๊ฐ•ํ•œ ๊ฐœ์ฒด์™€์˜ ๊ด€๊ณ„์— ํ•„์ˆ˜์ ์œผ๋กœ ์ฐธ์—ฌํ•จ
    • ์•ฝํ•œ ๊ฐœ์ฒด๋Š” ๊ฐ•ํ•œ ๊ฐœ์ฒด์˜ ํ‚ค๋ฅผ ํฌํ•จํ•˜์—ฌ ํ‚ค๋ฅผ ๊ตฌ์„ฑํ•จ

E-R ๋‹ค์ด์–ด๊ทธ๋žจ์—์„œ ์•ฝํ•œ ๊ฐœ์ฒด๋Š” ์ด์ค‘ ์‚ฌ๊ฐํ˜•์œผ๋กœ ํ‘œํ˜„ํ•˜๊ณ , ์•ฝํ•œ ๊ฐœ์ฒด๊ฐ€ ๊ฐ•ํ•œ ๊ฐœ์ฒด์™€ ๋งบ๋Š” ๊ด€๊ณ„๋Š” ์ด์ค‘ ๋งˆ๋ฆ„๋ชจ๋กœ ํ‘œํ˜„

์˜ˆ) ์ง์› ๊ฐœ์ฒด์™€ ๋ถ€์–‘๊ฐ€์กฑ ๊ฐœ์ฒด ์‚ฌ์ด์˜ ๋ถ€์–‘ ๊ด€๊ณ„์—์„œ ์ง์› ๊ฐœ์ฒด๋Š” ๊ฐ•ํ•œ ๊ฐœ์ฒด, ๋ถ€์–‘๊ฐ€์กฑ ๊ฐœ์ฒด๋Š” ์•ฝํ•œ ๊ฐœ์ฒด

03. ๋…ผ๋ฆฌ์  ๋ฐ์ดํ„ฐ ๋ชจ๋ธ

03-1. ๋…ผ๋ฆฌ์  ๋ฐ์ดํ„ฐ ๋ชจ๋ธ์˜ ๊ฐœ๋…

  • E-R ๋‹ค์ด์–ด๊ทธ๋žจ์œผ๋กœ ํ‘œํ˜„๋œ ๊ฐœ๋…์  ๊ตฌ์กฐ๋ฅผ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ €์žฅํ•  ํ˜•ํƒœ๋กœ ํ‘œํ˜„ํ•œ ๋…ผ๋ฆฌ์  ๊ตฌ์กฐ
    • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ๋…ผ๋ฆฌ์  ๊ตฌ์กฐ = ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์Šคํ‚ค๋งˆ(schema) ใ…ก> DBMS์— ์ข…์†์ 
  • ์‚ฌ์šฉ์ž๊ฐ€ ์ƒ๊ฐํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ๋ชจ์Šต ๋˜๋Š” ๊ตฌ์กฐ
  • ๊ด€๊ณ„ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ, ๊ณ„์ธต ๋ฐ์ดํ„ฐ ๋ชจ๋ธ, ๋„คํŠธ์›Œํฌ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ ๋“ฑ์ด ์žˆ์Œ

03-2. ๊ด€๊ณ„ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ

  • ์ผ๋ฐ˜์ ์œผ๋กœ ๋งŽ์ด ์‚ฌ์šฉ๋˜๋Š” ๋…ผ๋ฆฌ์  ๋ฐ์ดํ„ฐ ๋ชจ๋ธ
  • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ๋…ผ๋ฆฌ์  ๊ตฌ์กฐ๊ฐ€ 2์ฐจ์› ํ…Œ์ด๋ธ” ํ˜•ํƒœ์ž„

03-3. ๊ณ„์ธต ๋ฐ์ดํ„ฐ ๋ชจ๋ธ

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ๋…ผ๋ฆฌ์  ๊ตฌ์กฐ๊ฐ€ ํŠธ๋ฆฌ(tree) ํ˜•ํƒœ์ž„

  • ๋ฃจํŠธ ์—ญํ• ์„ ํ•˜๋Š” ๊ฐœ์ฒด๊ฐ€ ์กด์žฌํ•˜๊ณ  ์‚ฌ์ดํด์ด ์กด์žฌํ•˜์ง€ ์•Š์Œ
  • ๊ฐœ์ฒด ๊ฐ„์— ์ƒํ•˜ ๊ด€๊ณ„๊ฐ€ ์„ฑ๋ฆฝ
    • ๋ถ€๋ชจ ๊ฐœ์ฒด / ์ž์‹ ๊ฐœ์ฒด
    • ๋ถ€๋ชจ์™€ ์ž์‹ ๊ฐœ์ฒด๋Š” ์ผ๋Œ€๋‹ค(1:n) ๊ด€๊ณ„๋งŒ ํ—ˆ์šฉ๋จ
  • ๋‘ ๊ฐœ์ฒด ์‚ฌ์ด์— ํ•˜๋‚˜์˜ ๊ด€๊ณ„๋งŒ ์ •์˜ํ•  ์ˆ˜ ์žˆ์Œ (๋ฌด๋ฐฉํ–ฅ์ด๋ผ์„œ)
  • ๋‹ค๋Œ€๋‹ค(n:m) ๊ด€๊ณ„๋ฅผ ์ง์ ‘ ํ‘œํ˜„ํ•  ์ˆ˜ ์—†์Œ
  • ๊ฐœ๋…์  ๊ตฌ์กฐ๋ฅผ ๋ชจ๋ธ๋งํ•˜๊ธฐ ์–ด๋ ค์›Œ ๊ตฌ์กฐ๊ฐ€ ๋ณต์žกํ•ด์งˆ ์ˆ˜ ์žˆ์Œ
  • ๋ฐ์ดํ„ฐ์˜ ์‚ฝ์ž…·์‚ญ์ œ·์ˆ˜์ •·๊ฒ€์ƒ‰์ด ์‰ฝ์ง€ ์•Š์Œ

03-4. ๋„คํŠธ์›Œํฌ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ๋…ผ๋ฆฌ์  ๊ตฌ์กฐ๊ฐ€ ๋„คํŠธ์›Œํฌ, ์ฆ‰ ๊ทธ๋ž˜ํ”„ ํ˜•ํƒœ์ž„

  • ๊ฐœ์ฒด ๊ฐ„์—๋Š” ์ผ๋Œ€๋‹ค(1:n) ๊ด€๊ณ„๋งŒ ํ—ˆ์šฉ๋จ
    • ์˜ค๋„ˆ(owner) / ๋ฉค๋ฒ„(member)
  • ๋‘ ๊ฐœ์ฒด ์‚ฌ์ด์— ์—ฌ๋Ÿฌ ๊ด€๊ณ„๋ฅผ ์ •์˜ํ•  ์ˆ˜ ์žˆ์–ด ์ด๋ฆ„์œผ๋กœ ๊ตฌ๋ณ„ํ•จ
  • ๋‹ค๋Œ€๋‹ค(n:m) ๊ด€๊ณ„๋ฅผ ์ง์ ‘ ํ‘œํ˜„ํ•  ์ˆ˜ ์—†์Œ
  • ๊ตฌ์กฐ๊ฐ€ ๋ณต์žกํ•˜๊ณ  ๋ฐ์ดํ„ฐ์˜ ์‚ฝ์ž…·์‚ญ์ œ·์ˆ˜์ •·๊ฒ€์ƒ‰์ด ์‰ฝ์ง€ ์•Š์Œ