๊ด€๋ฆฌ ๋ฉ”๋‰ด

IT’s Portfolio

[Lecture] DataBase - Day 4 ๋ณธ๋ฌธ

Development Study

[Lecture] DataBase - Day 4

f1r3_r41n 2023. 3. 27. 14:20
728x90
๋ฐ˜์‘ํ˜•

๐Ÿ–ฅ DataBase - Day 4

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

  • 3.1 ๋…ผ๋ฆฌ์  ๋ฐ์ดํ„ฐ ๋ชจ๋ธ์˜ ๊ฐœ๋…๊ณผ ํŠน์„ฑ
    • E-R ๋‹ค์ด์–ด๊ทธ๋žจ์œผ๋กœ ํ‘œํ˜„๋œ ๊ฐœ๋…์  ๊ตฌ์กฐ๋ฅผ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์–ด๋–ค ํ˜•ํƒœ๋กœ ์ €์žฅํ• ์ง€๋ฅผ ๋…ผ๋ฆฌ์ ์œผ๋กœ ํ‘œํ˜„ํ•˜๋Š”๋ฐ, ์ด๋Ÿฌํ•œ ๋…ผ๋ฆฌ์ ์ธ ๊ตฌ์กฐ ๋ฅผ ๋…ผ๋ฆฌ์  ๋ฐ์ดํ„ฐ ๋ชจ๋ธ ์ด๋ผ๊ณ  ํ•จ
      • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ๋…ผ๋ฆฌ์  ๊ตฌ์กฐ = ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์Šคํ‚ค๋งˆ(schema)
    • ์‚ฌ์šฉ์ž๊ฐ€ ์ƒ๊ฐํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ๋ชจ์Šต ๋˜๋Š” ๊ตฌ์กฐ
    • ๊ด€๊ณ„ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ, ๊ณ„์ธต ๋ฐ์ดํ„ฐ ๋ชจ๋ธ, ๋„คํŠธ์›Œํฌ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ ๋“ฑ์ด ์žˆ์Œ
    • ๊ด€๊ณ„ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ : ์ผ๋ฐ˜์ ์œผ๋กœ ๋งŽ์ด ์‚ฌ์šฉ๋˜๋Š” ๋…ผ๋ฆฌ์  ๋ฐ์ดํ„ฐ ๋ชจ๋ธ
      • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ๋…ผ๋ฆฌ์  ๊ตฌ์กฐ๊ฐ€ 2์ฐจ์› ํ…Œ์ด๋ธ” ํ˜•ํƒœ
  • 3.2 ๊ณ„์ธต ๋ฐ์ดํ„ฐ ๋ชจ๋ธ
    • ๊ณ„์ธต ๋ฐ์ดํ„ฐ ๋ชจ๋ธ(hierarchical data model)
      • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋…ผ๋ฆฌ์  ๊ตฌ์กฐ๊ฐ€ ํŠธ๋ฆฌ(tree) ํ˜•ํƒœ
      • ๋ฃจํŠธ ์—ญํ• ์„ ํ•˜๋Š” ๊ฐœ์ฒด๊ฐ€ ์กด์žฌํ•˜๊ณ  ์‚ฌ์ดํด์ด ์กด์žฌํ•˜์ง€ ์•Š์Œ
      • ๊ฐœ์ฒด๋“ค ๊ฐ„ ์ƒํ•˜ ๊ด€๊ณ„ ์„ฑ๋ฆฝ
        • ์ƒ์œ„ ๊ฐœ์ฒด : ๋ถ€๋ชจ ๊ฐœ์ฒด
        • ํ•˜์œ„ ๊ฐœ์ฒด : ์ž์‹ ๊ฐœ์ฒด
        • ๋ถ€๋ชจ ์ž์‹ ๊ฐœ์ฒด๋Š” ์ผ๋Œ€๋‹ค(1:n) ๊ด€๊ณ„๋งŒ ์„ฑ๋ฆฝ
          • ์ผ๋Œ€์ผ(1:1) ๊ด€๊ณ„๋Š” ๋„“์€ ์˜๋ฏธ๋กœ ์ผ๋Œ€๋‹ค(1:n) ๊ด€๊ณ„์˜ ํ•œ ์œ ํ˜•์œผ๋กœ ๋ณผ ์ˆ˜ ์žˆ์Œ
      • ๋‘ ๊ฐœ์ฒด ์‚ฌ์ด์— ๊ด€๊ณ„๋ฅผ ํ•˜๋‚˜๋งŒ ์ •์˜ํ•  ์ˆ˜ ์žˆ์Œ
      • ๋‹ค๋Œ€๋‹ค(n:m) ๊ด€๊ณ„๋ฅผ ์ง์ ‘ ํ‘œํ˜„ํ•  ์ˆ˜ ์—†์Œ
      • ๊ฐœ์ฒด ์‚ฌ์ด์˜ ๊ด€๊ณ„๋ฅผ ์ •์˜ํ•  ๋•Œ ์—ฌ๋Ÿฌ ์ œ์•ฝ์ด ์กด์žฌ
        • ๋•Œ๋ฌธ์— ๊ฐœ๋…์  ๊ตฌ์กฐ๋ฅผ ๋…ผ๋ฆฌ์  ๊ตฌ์กฐ๋กœ ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ๋ชจ๋ธ๋งํ•˜๊ธฐ ์–ด๋ ค์›Œ ๊ตฌ์กฐ๊ฐ€ ๋ณต์žกํ•ด์งˆ ์ˆ˜ ์žˆ์Œ
        • ๋ฐ์ดํ„ฐ์˜ ์‚ฝ์ž…๏น’์‚ญ์ œ๏น’์ˆ˜์ • ๋“ฑ์„ ์—ฐ์‚ฐํ•˜๊ฑฐ๋‚˜ ์›ํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๊ฒ€์ƒ‰ํ•˜๊ธฐ๊ฐ€ ์‰ฝ์ง€ ์•Š์Œ
    • ๋„คํŠธ์›Œํฌ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ(network data model)
      • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋…ผ๋ฆฌ์  ๊ตฌ์กฐ๊ฐ€ ๋„คํŠธ์›Œํฌ(network) ํ˜•ํƒœ, ์ฆ‰ ๊ทธ๋ž˜ํ”„(graph) ํ˜•ํƒœ
      • ๊ฐœ์ฒด๋“ค ๊ฐ„ ์ผ๋Œ€๋‹ค(1:n) ๊ด€๊ณ„๋งŒ ์ง์ ‘ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ์Œ
        • ๋‹ค๋Œ€๋‹ค(n:m) ๊ด€๊ณ„๋ฅผ ์ง์ ‘ ํ‘œํ˜„ํ•  ์ˆ˜ ์—†์Œ
      • ์ผ๋Œ€๋‹ค(1:n) ๊ด€๊ณ„์˜ ๊ฐœ์ฒด๋“ค์„ ๊ฐ๊ฐ ์˜ค๋„ˆ(owner), ๋ฉค๋ฒ„(member) ๋ผ ์นญํ•จ
      • ๋‘ ๊ฐœ์ฒด ๊ฐ„์˜ ๊ด€๊ณ„๋ฅผ ์—ฌ๋Ÿฌ ๊ฐœ ์ •์˜ํ•  ์ˆ˜ ์žˆ์–ด ๊ด€๊ณ„๋ฅผ ์ด๋ฆ„์œผ๋กœ ๊ตฌ๋ณ„ํ•จ
      • ๊ณ„์ธต ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๋ณด๋‹ค ๊ฐœ๋…์  ๊ตฌ์กฐ๋ฅผ ๋…ผ๋ฆฌ์  ๊ตฌ์กฐ๋กœ ์ข€ ๋” ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ๋ชจ๋ธ๋ง ๊ฐ€๋Šฅ
        • ํ•˜์ง€๋งŒ ๊ณ„์ธต ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๋ณด๋‹ค ๊ตฌ์กฐ๊ฐ€ ํ›จ์”ฌ ๋ณต์žกํ•ด์งˆ ์ˆ˜ ์žˆ์–ด, ๋ฐ์ดํ„ฐ์˜ ์‚ฝ์ž…๏น’์‚ญ์ œ๏น’์ˆ˜์ • ๊ฐ™์€ ์—ฐ์‚ฐ๊ณผ ๋ฐ์ดํ„ฐ ๊ฒ€์ƒ‰์ด ๊ณ„์ธต ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๋ณด๋‹ค ๋” ์–ด๋ ค์›Œ์ง€๋Š” ๋ฌธ์ œ ๋ฐœ์ƒ
    • ๊ฐ์ฒด์˜ ๊ฐœ๋…์„ ๋„์ž…ํ•œ ๊ฐ์ฒด์ง€ํ–ฅ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ(object-oriented data model) ๋ฐ ๊ฐ์ฒด์ง€ํ–ฅ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๊ณผ ๊ด€๊ณ„ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ์˜ ํŠน์„ฑ์„ ๋ชจ๋‘ ์ˆ˜์šฉํ•˜๋Š” ๊ฐ์ฒด๊ด€๊ณ„ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ(object-relational data model) ๋“ฑ์žฅ
    • ์•„์ง๊นŒ์ง€๋Š” ๋ˆ„๊ตฌ๋‚˜ ์‰ฝ๊ฒŒ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ์™€ ๋ฐ์ดํ„ฐ์˜ ๊ฒ€์ƒ‰๏น’์‚ฝ์ž…๏น’์‚ญ์ œ๏น’์ˆ˜์ • ๋“ฑ์˜ ์—ฐ์‚ฐ์„ ์ œ๊ณตํ•˜๋Š” ๊ด€๊ณ„ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ ์ด ๊พธ์ค€ํ•˜๊ฒŒ ์ธ๊ธฐ๊ฐ€ ๋†’์Œ

๐Ÿ‘‰๐Ÿป [Chapter 05] ๊ด€๊ณ„ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ

[01] ๊ด€๊ณ„ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ์˜ ๊ฐœ๋…

  • ๊ฐœ๋…์  ๊ตฌ์กฐ๋ฅผ ๋…ผ๋ฆฌ์  ๊ตฌ์กฐ๋กœ ํ‘œํ˜„ํ•˜๋Š” ๋…ผ๋ฆฌ์  ๋ฐ์ดํ„ฐ ๋ชจ๋ธ
  • ํ•˜๋‚˜์˜ ๊ฐœ์ฒด์— ๊ด€ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฆด๋ ˆ์ด์…˜(relation) ํ•˜๋‚˜์— ๋‹ด์•„ ์ €์žฅ
  • 1.1 ๊ด€๊ณ„ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ์˜ ๊ธฐ๋ณธ ์šฉ์–ด
    • ๋ฆด๋ ˆ์ด์…˜(relation)
      • ํ•˜๋‚˜์— ๊ฐœ์ฒด์— ๊ด€ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ 2์ฐจ์› ํ…Œ์ด๋ธ”์˜ ๊ตฌ์กฐ๋กœ ์ €์žฅํ•œ ๊ฒƒ
      • ํŒŒ์ผ ๊ด€๋ฆฌ ์‹œ์Šคํ…œ ๊ด€์ ์—์„œ ํŒŒ์ผ(file) ์— ๋Œ€์‘
    • ์†์„ฑ(attribute)
      • ๋ฆด๋ ˆ์ด์…˜์˜ ์—ด
      • ํŒŒ์ผ ๊ด€๋ฆฌ ์‹œ์Šคํ…œ ๊ด€์ ์—์„œ ํ•„๋“œ(field) ์— ๋Œ€์‘
    • ํŠœํ”Œ(tuple)
      • ๋ฆด๋ ˆ์ด์…˜์˜ ํ–‰
      • ํŒŒ์ผ ๊ด€๋ฆฌ ์‹œ์Šคํ…œ ๊ด€์ ์—์„œ ๋ ˆ์ฝ”๋“œ(record) ์— ๋Œ€์‘
    • ๋„๋ฉ”์ธ(domain)
      • ์†์„ฑ ํ•˜๋‚˜๊ฐ€ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋Š” ๋ชจ๋“  ๊ฐ’์˜ ์ง‘ํ•ฉ
      • ์†์„ฑ ๊ฐ’์„ ์ž…๋ ฅํ•˜๊ฑฐ๋‚˜ ์ˆ˜์ •ํ•  ๋•Œ ์ ํ•ฉ์„ฑ์„ ํŒ๋‹จํ•˜๋Š” ๊ธฐ์ค€
      • ์ผ๋ฐ˜์ ์œผ๋กœ ์†์„ฑ์˜ ํŠน์„ฑ์„ ๊ณ ๋ คํ•œ ๋ฐ์ดํ„ฐ ํƒ€์ž…์œผ๋กœ ์ •์˜
      • ๋ฐ์ดํ„ฐ ํƒ€์ž…์„ ๋„๋ฉ”์ธ, ๋ณ€์ˆ˜๋ฅผ ์†์„ฑ ์œผ๋กœ ์ƒ๊ฐํ•˜๋ฉด ์ดํ•ดํ•˜๊ธฐ ์‰ฌ์›€
    • ๋„ ๊ฐ’(NULL)
      • ์†์„ฑ ๊ฐ’์„ ๋ชจ๋ฅด๊ฑฐ๋‚˜, ์ ํ•ฉํ•œ ๊ฐ’์ด ์—†๋Š” ๊ฒฝ์šฐ ์‚ฌ์šฉํ•˜๋Š” ํŠน๋ณ„ํ•œ ๊ฐ’
      • ํŠน์ • ์†์„ฑ์— ํ•ด๋‹น๋˜๋Š” ๊ฐ’์ด ์—†์Œ์„ ๋‚˜ํƒ€๋‚ด๋ฏ€๋กœ ์ˆซ์ž 0์ด๋‚˜ ๊ณต๋ฐฑ ๋ฌธ์ž์™€๋Š” ๋‹ค๋ฆ„
      • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ด€๋ฆฌ ์‹œ์Šคํ…œ๋งˆ๋‹ค ๋„ ๊ฐ’์„ ํ‘œ์‹œํ•˜๋Š” ๊ธฐํ˜ธ๊ฐ€ ๋‹ฌ๋ผ ๋ณดํ†ต ๊ณต๋ฐฑ์„ ์‚ฌ์šฉํ•จ
    • ์ฐจ์ˆ˜(degree)
      • ํ•˜๋‚˜์˜ ๋ฆด๋ ˆ์ด์…˜์—์„œ ์†์„ฑ์˜ ์ „์ฒด ๊ฐœ์ˆ˜
      • ์ผ๋ฐ˜์ ์œผ๋กœ ์ž์ฃผ ๋ณ€ํ•˜์ง€ ์•Š๋Š”๋‹ค๋Š” ์ •์ ์ธ ํŠน์ง•์„ ๊ฐ€์ง
    • ์นด๋””๋„๋ฆฌํ‹ฐ(cardinality)
      • ํ•˜๋‚˜์˜ ๋ฆด๋ ˆ์ด์…˜์—์„œ ํŠœํ”Œ์˜ ์ „์ฒด ๊ฐœ์ˆ˜
      • ์ผ๋ฐ˜์ ์œผ๋กœ ์ž์ฃผ ๋ณ€ํ•œ๋‹ค๋Š” ๋™์ ์ธ ํŠน์ง•์„ ๊ฐ€์ง
  • 1.2 ๋ฆด๋ ˆ์ด์…˜๊ณผ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ๊ตฌ์„ฑ
    • ๋ฆด๋ ˆ์ด์…˜ ์Šคํ‚ค๋งˆ(relation schema)
      • ๋ฆด๋ ˆ์ด์…˜์˜ ๋…ผ๋ฆฌ์  ๊ตฌ์กฐ
      • ๋ฆด๋ ˆ์ด์…˜์˜ ์ด๋ฆ„๊ณผ ์ผ๋ ˆ์ด์…˜์— ํฌํ•จ๋œ ๋ชจ๋“  ์†์„ฑ์˜ ์ด๋ฆ„์œผ๋กœ ์ •์˜
      • ๋ฆด๋ ˆ์ด์…˜ ์Šคํ‚ค๋งˆ๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ด€๋ฆฌ ์‹œ์Šคํ…œ์ด ๋‚ด๋ถ€์ ์œผ๋กœ ๋ฐ์ดํ„ฐ ์ •์˜์–ด๋ฅผ ์ด์šฉํ•ด ์ •์˜
      • ๋ฆด๋ ˆ์ด์…˜ ๋‚ดํฌ(relation intension) ์ด๋ผ๊ณ ๋„ ์นญํ•จ
      • ์ž์ฃผ ๋ณ€ํ•˜์ง€ ์•Š๋Š” ์ •์ ์ธ ํŠน์ง•์„ ๊ฐ€์ง
    • ๋ฆด๋ ˆ์ด์…˜ ์ธ์Šคํ„ด์Šค(relation instance)
      • ์–ด๋Š ํ•œ ์‹œ์ ์— ๋ฆด๋ ˆ์ด์…˜์— ์กด์žฌํ•˜๋Š” ํŠœํ”Œ๋“ค์˜ ์ง‘ํ•ฉ
      • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ด€๋ฆฌ ์‹œ์Šคํ…œ์ด ๋‚ด๋ถ€์ ์œผ๋กœ๋Š” ๋ฐ์ดํ„ฐ ์กฐ์ž‘์–ด๋ฅผ ์ด์šฉํ•ด ๋ฆด๋ ˆ์ด์…˜ ์ธ์Šคํ„ด์Šค์˜ ํŠœํ”Œ์„ ๊ฒ€์ƒ‰ํ•˜๊ฑฐ๋‚˜, ์ƒˆ๋กœ์šด ํŠœํ”Œ์˜ ์‚ฝ์ž…๊ณผ ๊ธฐ์กด ํŠœํ”Œ ์‚ญ์ œ ๋ฐ ์ˆ˜์ •์„ ์ˆ˜ํ–‰
      • ๋ฆด๋ ˆ์ด์…˜ ์™ธ์—ฐ(relation extension) ์ด๋ผ๊ณ ๋„ ์นญํ•จ
      • ํŠœํ”Œ์˜ ์‚ฝ์ž…๏น’์‚ญ์ œ๏น’์ˆ˜์ •์ด ์ž์ฃผ ๋ฐœ์ƒํ•˜๋Š” ๋™์ ์ธ ํŠน์ง•์„ ๊ฐ€์ง
    • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์Šคํ‚ค๋งˆ(DataBase schema)
      • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ์ „์ฒด ๊ตฌ์กฐ
      • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ๋ฆด๋ ˆ์ด์…˜๋“ค์˜ ์Šคํ‚ค๋งˆ๋ฅผ ๋ชจ์•„๋†“์€ ๊ฒƒ
    • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค(DataBase instance)
      • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ €์žฅ๋œ ๋ฐ์ดํ„ฐ ๋‚ด์šฉ์˜ ์ „์ฒด ์ง‘ํ•ฉ (= ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ๋ชจ๋“  ๋ฆด๋ ˆ์ด์…˜์˜ ์ธ์Šคํ„ด์Šค๋ฅผ ๋ชจ์•„๋†“์€ ๊ฒƒ)
  • 1.3 ๋ฆด๋ ˆ์ด์…˜์˜ ํŠน์„ฑ
    • ํŠœํ”Œ์˜ ์œ ์ผ์„ฑ
      • ํ•˜๋‚˜์˜ ๋ฆด๋ ˆ์ด์…˜์—๋Š” ๋™์ผํ•œ ํŠœํ”Œ์ด ์กด์žฌํ•  ์ˆ˜ ์—†์Œ
        • ํŠœํ”Œ์„ ์œ ์ผํ•˜๊ฒŒ ๊ตฌ๋ณ„ํ•˜๊ธฐ ์œ„ํ•ด ์„ ์ •ํ•˜๋Š” ์†์„ฑ(๋˜๋Š” ์†์„ฑ๋“ค์˜ ๋ชจ์ž„)์˜ ๊ฐ’์œผ๋กœ ํŒ๋‹จ
    • ํŠœํ”Œ์˜ ๋ฌด์ˆœ์„œ
      • ํ•˜๋‚˜์˜ ๋ฆด๋ ˆ์ด์…˜์—์„œ ํŠœํ”Œ ์‚ฌ์ด์˜ ์ˆœ์„œ๋Š” ๋ฌด์˜๋ฏธํ•จ
    • ์†์„ฑ์˜ ๋ฌด์ˆœ์„œ
      • ํ•˜๋‚˜์˜ ๋ฆด๋ ˆ์ด์…˜์—์„œ ์†์„ฑ ์‚ฌ์ด์˜ ์ˆœ์„œ๋Š” ๋ฌด์˜๋ฏธํ•จ
    • ์†์„ฑ์˜ ์›์ž์„ฑ
      • ์†์„ฑ ๊ฐ’์œผ๋กœ ์›์ž ๊ฐ’๋งŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Œ
  • 1.4 ํ‚ค์˜ ์ข…๋ฅ˜
    • ํ‚ค(key)
      • ๋ฆด๋ ˆ์ด์…˜์— ํฌํ•จ๋œ ํŠœํ”Œ๋“ค์„ ์œ ์ผํ•˜๊ฒŒ ๊ตฌ๋ณ„ํ•˜๋Š” ์†์„ฑ ๋˜๋Š” ์†์„ฑ๋“ค์˜ ์ง‘ํ•ฉ
    • ํ‚ค์˜ ํŠน์„ฑ
      • ์œ ์ผ์„ฑ(uniqueness)
        • ํ•˜๋‚˜์˜ ๋ฆด๋ ˆ์ด์…˜์—์„œ ๋ชจ๋“  ํŠœํ”Œ์€ ์„œ๋กœ ๋‹ค๋ฅธ ํ‚ค ๊ฐ’์„ ๊ฐ€์ ธ์•ผ ํ•จ
      • ์ตœ์†Œ์„ฑ(minimality)
        • ๊ผญ ํ•„์š”ํ•œ ์ตœ์†Œํ•œ์˜ ์†์„ฑ๋“ค๋กœ๋งŒ ํ‚ค๋ฅผ ๊ตฌ์„ฑํ•จ
    • ํ‚ค์˜ ๊ด€๊ณ„
    • ์Šˆํผํ‚ค(super key)
      • ์œ ์ผ์„ฑ์˜ ํŠน์„ฑ์„ ๋งŒ์กฑํ•˜๋Š” ์†์„ฑ ๋˜๋Š” ์†์„ฑ๋“ค์˜ ์ง‘ํ•ฉ
      • (Ex) ๊ณ ๊ฐ ๋ฆด๋ ˆ์ด์…˜์˜ ์Šˆํผํ‚ค => ๊ณ ๊ฐ ์•„์ด๋””, (๊ณ ๊ฐ ์•„์ด๋””, ๊ณ ๊ฐ ์ด๋ฆ„), (๊ณ ๊ฐ ์ด๋ฆ„, ์ฃผ์†Œ) ๋“ฑ
    • ํ›„๋ณดํ‚ค(candidate key)
      • ์œ ์ผ์„ฑ๊ณผ ์ตœ์†Œ์„ฑ์„ ๋งŒ์กฑํ•˜๋Š” ์†์„ฑ ๋˜๋Š” ์†์„ฑ๋“ค์˜ ์ง‘ํ•ฉ
      • (Ex) ๊ณ ๊ฐ ๋ฆด๋ ˆ์ด์…˜์˜ ํ›„๋ณดํ‚ค => ๊ณ ๊ฐ ์•„์ด๋””, (๊ณ ๊ฐ ์ด๋ฆ„, ์ฃผ์†Œ)
    • ๊ธฐ๋ณธํ‚ค(primary key)
      • ์—ฌ๋Ÿฌ ํ›„๋ณดํ‚ค ์ค‘์—์„œ ๊ธฐ๋ณธ์ ์œผ๋กœ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด ์„ ํƒํ•œ ํ‚ค
      • (Ex) ๊ณ ๊ฐ ๋ฆด๋ ˆ์ด์…˜์˜ ๊ธฐ๋ณธํ‚ค => ๊ณ ๊ฐ ์•„์ด๋””
      • ๊ธฐ๋ณธํ‚ค๋ฅผ ์„ ํƒํ•  ๋•Œ ๊ณ ๋ คํ•˜๋ฉด ๋„์›€์ด ๋˜๋Š” ๊ธฐ์ค€
        • ๋„ ๊ฐ’์„ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋Š” ์†์„ฑ์ด ํฌํ•จ๋œ ํ›„๋ณดํ‚ค๋Š” ๊ธฐ๋ณธํ‚ค๋กœ ๋ถ€์ ํ•ฉํ•จ
        • ๊ฐ’์ด ์ž์ฃผ ๋ณ€๊ฒฝ๋  ์ˆ˜ ์žˆ๋Š” ์†์„ฑ์ด ํฌํ•จ๋œ ํ›„๋ณดํ‚ค๋Š” ๊ธฐ๋ณธํ‚ค๋กœ ๋ถ€์ ํ•ฉํ•จ
        • ๋‹จ์ˆœํ•œ ํ›„๋ณดํ‚ค๋ฅผ ๊ธฐ๋ณธํ‚ค๋กœ ์„ ํƒํ•จ
    • ๋Œ€์ฒดํ‚ค(alternate key)
      • ๊ธฐ๋ณธํ‚ค๋กœ ์„ ํƒ๋˜์ง€ ๋ชปํ•œ ํ›„๋ณดํ‚ค๋“ค
      • (Ex) ๊ณ ๊ฐ ๋ฆด๋ ˆ์ด์…˜์˜ ๋Œ€์ฒดํ‚ค => (๊ณ ๊ฐ ์ด๋ฆ„, ์ฃผ์†Œ)
    • ์™ธ๋ž˜ํ‚ค(foreign key)
      • ๋‹ค๋ฅธ ๋ฆด๋ ˆ์ด์…˜์˜ ๊ธฐ๋ณธํ‚ค๋ฅผ ๊ทธ๋Œ€๋กœ ์ฐธ์กฐํ•˜๋Š” ์†์„ฑ์˜ ์ง‘ํ•ฉ
      • ๋ฆด๋ ˆ์ด์…˜๋“ค ์‚ฌ์ด์˜ ๊ด€๊ณ„๋ฅผ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ํ‘œํ˜„
        • ์ฐธ์กฐํ•˜๋Š” ๋ฆด๋ ˆ์ด์…˜ : ์™ธ๋ž˜ํ‚ค๋ฅผ ๊ฐ€์ง„ ๋ฆด๋ ˆ์ด์…˜
        • ์ฐธ์กฐ๋˜๋Š” ๋ฆด๋ ˆ์ด์…˜ : ์™ธ๋ž˜ํ‚ค๊ฐ€ ์ฐธ์กฐํ•˜๋Š” ๊ธฐ๋ณธํ‚ค๋ฅผ ๊ฐ€์ง„ ๋ฆด๋ ˆ์ด์…˜
      • ์™ธ๋ž˜ํ‚ค ์†์„ฑ๊ณผ ๊ทธ๊ฒƒ์ด ์ฐธ์กฐํ•˜๋Š” ๊ธฐ๋ณธํ‚ค ์†์„ฑ์˜ ์ด๋ฆ„์€ ๋‹ฌ๋ผ๋„ ๋˜์ง€๋งŒ ๋„๋ฉ”์ธ์€ ๊ฐ™์•„์•ผ ํ•จ
      • ํ•˜๋‚˜์˜ ๋ฆด๋ ˆ์ด์…˜์—๋Š” ์™ธ๋ž˜ํ‚ค๊ฐ€ ์—ฌ๋Ÿฌ ๊ฐœ ์กด์žฌํ•  ์ˆ˜๋„ ์žˆ๊ณ , ์™ธ๋ž˜ํ‚ค๋ฅผ ๊ธฐ๋ณธํ‚ค๋กœ ์‚ฌ์šฉํ•  ์ˆ˜๋„ ์žˆ์Œ
      • ๊ฐ™์€ ๋ฆด๋ ˆ์ด์…˜์˜ ๊ธฐ๋ณธํ‚ค๋ฅผ ์ฐธ์กฐํ•˜๋Š” ์™ธ๋ž˜ํ‚ค๋„ ์ •์˜ ๊ฐ€๋Šฅ
        • ์™ธ๋ž˜ํ‚ค ์†์„ฑ์€ ๋„ ๊ฐ’์„ ๊ฐ€์งˆ ์ˆ˜๋„ ์žˆ์Œ
728x90
๋ฐ˜์‘ํ˜•

'Development Study' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[Lecture] Operating System with Ubuntu - Day 2~3  (0) 2023.03.29
[Lecture] Data Communication - Day 3~4  (0) 2023.03.27
[Lecture] DataBase - Summary (01~03)  (0) 2023.03.20
[Lecture] DataBase - Day 3  (0) 2023.03.20
[Lecture] Operating System with Ubuntu - Day 1  (0) 2023.03.16
Comments