๋ฒ ์–ด_
TechBear
๋ฒ ์–ด_
์ „์ฒด ๋ฐฉ๋ฌธ์ž
์˜ค๋Š˜
์–ด์ œ
  • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (336)
    • Spring (33)
      • ๊ฐœ๋… (13)
      • Security (5)
      • ์‹ค์Šต (1)
      • ํ† ๋น„ ์Šคํ”„๋ง (11)
    • JPA (6)
    • ํ”„๋กœ์ ํŠธ ๊ธฐ๋ก (24)
    • DB (13)
    • JAVA (18)
    • ์•Œ๊ณ ๋ฆฌ์ฆ˜ (50)
      • ์œ ํ˜•์ •๋ฆฌ (8)
      • Baekjoon (21)
      • LeetCode (18)
    • ๋””์ž์ธํŒจํ„ด (0)
    • ๊ฐœ๋ฐœ์„œ์  (79)
      • Effective Java (78)
      • ๊ฐ์ฒด์ง€ํ–ฅ์˜ ์‚ฌ์‹ค๊ณผ ์˜คํ•ด (1)
    • ๋…ํ›„๊ฐ (4)
    • ๋ณด์•ˆ (2)
    • ์šด์˜์ฒด์ œ(OS) (53)
      • ๊ณต๋ฃก์ฑ… (53)
    • ์ปดํ“จํ„ฐ ๋„คํŠธ์›Œํฌ (28)
      • ์ปดํ“จํ„ฐ ๋„คํŠธ์›Œํฌ ํ•˜ํ–ฅ์‹ ์ ‘๊ทผ (23)
    • ์ž๋ฃŒ๊ตฌ์กฐ (1)
    • DevOps (2)
    • ์•ฑ ๊ฐœ๋ฐœ (20)
      • ์•ˆ๋“œ๋กœ์ด๋“œ ์ŠคํŠœ๋””์˜ค (20)

๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

    ๊ณต์ง€์‚ฌํ•ญ

    ์ธ๊ธฐ ๊ธ€

    ํƒœ๊ทธ

    • dfs
    • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค
    • jpa
    • leetcode
    • ์Šคํ”„๋ง
    • ์ฝ”๋“œ์—…
    • Spring
    • BFS
    • ํ† ๋น„์Šคํ”„๋ง
    • ์ž๋ฐ”
    • C++
    • ์Šค๋ ˆ๋“œ
    • java
    • ๋ฐฑ์ค€
    • ์•Œ๊ณ ๋ฆฌ์ฆ˜
    • ์Šคํ”„๋ง์‹œํ๋ฆฌํ‹ฐ
    • ํ•จ์ˆ˜ํ˜•์ธํ„ฐํŽ˜์ด์Šค
    • ์ดํŽ™ํ‹ฐ๋ธŒ์ž๋ฐ”
    • ์ž๋ฐ”8
    • ์šด์˜์ฒด์ œ

    ์ตœ๊ทผ ๋Œ“๊ธ€

    ์ตœ๊ทผ ๊ธ€

    ํ‹ฐ์Šคํ† ๋ฆฌ

    hELLO ยท Designed By ์ •์ƒ์šฐ.
    ๋ฒ ์–ด_

    TechBear

    [DB] ์ •๊ทœํ™”
    DB

    [DB] ์ •๊ทœํ™”

    2023. 6. 11. 05:37

    ๐Ÿ”  ๋‹ค๊ณผ ์†์„ฑ๊ณผ ๋ณตํ•ฉ ์†์„ฑ

    ๋‹ค๊ณผ ์†์„ฑ ํ…Œ์ด๋ธ”

    ๋‹ค์Œ์˜ ํ…Œ์ด๋ธ” ๊ตฌ์กฐ๋Š” ์ฃผ๋ฌธ์ƒํ’ˆ ์ปฌ๋Ÿผ์— ๋„ˆ๋ฌด ๋งŽ์€ ์ •๋ณด๊ฐ€ ์žˆ๋‹ค๋Š” ๊ฒƒ์— ์žˆ๋‹ค. ํ•œ ์ปฌ๋Ÿผ์€ ํ•œ ์†์„ฑ๋งŒ ๊ฐ€์ ธ์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— row๋ฅผ ์ƒˆ๋กœ ๋ถ„๋ฆฌํ•ด์•ผ ํ•œ๋‹ค.

    ๋‹ค๊ณผ ์†์„ฑ ๋ถ„๋ฆฌ

    01๋ฐฐ 1๋ฐ•์Šค์™€ ๊ฐ™์ด ํ•œ ์ •๋ณด๋งŒ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋„๋ก ๋ถ„๋ฆฌํ–ˆ๋‹ค. ์—ฌ๊ธฐ์„œ ๋˜ ๋‹ค๋ฅธ ๋ฌธ์ œ๋Š” ์ƒํ’ˆ ์ฝ”๋“œ, ์ƒํ’ˆ๋ช…, ์ƒํ’ˆ ์ˆ˜๋Ÿ‰ ์ฝ”๋“œ๊ฐ€ ํ•œ ์ปฌ๋Ÿผ์— ๊ฐ™์ด ์žˆ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค. (๋ณตํ•ฉ ์†์„ฑ)

    ๋ณตํ•ฉ์†์„ฑ ๋ถ„๋ฆฌ

    ๋ณตํ•ฉ ์†์„ฑ์˜ ๊ฒฝ์šฐ๋Š” ์ปฌ๋Ÿผ์˜ ์ˆ˜๋ฅผ ๋Š˜๋ ค์„œ ์ด๋ฅผ ํ•ด๊ฒฐํ•œ๋‹ค.

     

    ๐Ÿ”  ์ œ 1์ •๊ทœํ™”

    ๋ฐ์ดํ„ฐ ์ค‘๋ณต์„ ์ œ๊ฑฐํ•˜๊ธฐ ์œ„ํ•œ ํ…Œ์ด๋ธ” ๋ถ„ํ• ์„ ์˜๋ฏธํ•œ๋‹ค. ์—ฌ๊ธฐ์„œ๋Š” ์ฃผ๋ฌธ ๋ฒˆํ˜ธ, ๋‚ ์งœ, ์„ฑ๋ช…, ์—ฐ๋ฝ์ฒ˜ ์ปฌ๋Ÿผ์˜ ์ •๋ณด๊ฐ€ ๊ฒน์น˜๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค. ๋”ฐ๋ผ์„œ ์ด๋ฅผ ๋ถ„๋ฆฌํ•œ๋‹ค.

    ๋ฐ์ดํ„ฐ ์ค‘๋ณต

    ๋ถ„๋ฆฌ๋œ ๋‘ ํ…Œ์ด๋ธ”์€ ์ฃผ๋ฌธ๋ฒˆํ˜ธ๋กœ pk, fk ๊ด€๊ณ„๋ฅผ ๋งบ๋Š”๋‹ค.

    ํ…Œ์ด๋ธ” ๋ถ„๋ฆฌ

     

    ์˜ค๋ฅธ์ชฝ ํ…Œ์ด๋ธ”์˜ pk๊ฐ’์€ ์ฃผ๋ฌธ๋ฒˆํ˜ธ + ์ƒํ’ˆ ์ฝ”๋“œ๋ฅผ ํ•จ๊ป˜ ๋ฌถ์–ด ์„ค์ •๋  ์ˆ˜ ์žˆ๋‹ค

    ํ…Œ์ด๋ธ” ๋ถ„๋ฆฌ + pk ์„ค์ •

     

    ๐Ÿ”  ์ œ 2์ •๊ทœํ™”

    ๋‘ ๊ฐœ ์ด์ƒ์œผ๋กœ ๊ตฌ์„ฑ๋œ PK์—์„œ ๋ฐœ์ƒํ•œ๋‹ค. PK ์†์„ฑ ์ค‘ ํ•˜๋‚˜์—๋งŒ ์ข…์†์ด ๋  ๋•Œ ์ด๋ฅผ ๋ถ„๋ฆฌํ•ด์•ผ ํ•œ๋‹ค. ์ƒํ’ˆ๋ช…์€ ์ฃผ๋ฌธ๋ฒˆํ˜ธ์—๋Š” ์ข…์†์ ์ด์ง€ ์•Š์ง€๋งŒ, ์ƒํ’ˆ ์ฝ”๋“œ์—๋Š” ์ข…์†์ ์ด๋‹ค. ์ฆ‰, ์ƒํ’ˆ์ฝ”๋“œ์—๋งŒ ์ข…์†๋˜๊ณ  ์ฃผ๋ฌธ๋ฒˆํ˜ธ์™€๋Š” ์ „ํ˜€ ๊ด€๊ณ„๊ฐ€ ์—†๋‹ค. ๋”ฐ๋ผ์„œ ์ด๋ฅผ ๋ถ„๋ฆฌํ•ด์•ผ ํ•œ๋‹ค.

    ์ œ 2์ •๊ทœํ™”

     

    ๐Ÿ”  ์ œ 3์ •๊ทœํ™”

    ์‹๋ณ„์ž ์ด์™ธ์˜ ์†์„ฑ๊ฐ„์— ์ข…์† ๊ด€๊ณ„๊ฐ€ ์กด์žฌํ•˜๋ฉด ์•ˆ ๋œ๋‹ค. ๋‹ค์Œ์—์„œ๋Š” ์„ฑ๋ช…๊ณผ ์—ฐ๋ฝ์ฒ˜๊ฐ€ ์„œ๋กœ ์ข…์†์ ์ด๋‹ค. ์ข…์† ๊ด€๊ณ„๊ฐ€ ์žˆ์œผ๋ฉด ์ค‘๋ณต ๊ฐ’์ด ์ƒ๊ธฐ๊ธฐ ๋•Œ๋ฌธ์— ๋ณ„๋„ ํ…Œ์ด๋ธ”๋กœ ๋ถ„๋ฆฌ์‹œ์ผœ์•ผ ํ•œ๋‹ค.

    ์ปฌ๋Ÿผ๊ฐ„ ์ข…์†์  ๊ด€๊ณ„๋ฅผ ๊ฐ–๋Š” ์˜ˆ

    ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๊ณ ๊ฐ๋ฒˆํ˜ธ๋ผ๋Š” PK, FK๋ฅผ ๋„์ž…ํ•˜๊ณ  ํ…Œ์ด๋ธ” ๋ถ„๋ฆฌํ•œ๋‹ค.

    ํ…Œ์ด๋ธ” ๋ถ„๋ฆฌ

     

    ๐Ÿ”  ์ตœ์ข… ํ…Œ์ด๋ธ”

    ๐Ÿ”  ์ •๋ฆฌ

    ๋‹ค๊ณผ์†์„ฑ๊ณผ ๋ณตํ•ฉ์†์„ฑ์„ ์ œ๊ฑฐํ•˜๊ธฐ ์œ„ํ•ด ํ…Œ์ด๋ธ”์„ ๋ถ„๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค. ํ…Œ์ด๋ธ”์„ ๋ถ„๋ฆฌํ•˜๋Š” ๊ณผ์ •์—์„œ ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ๋ฐ์ดํ„ฐ์˜ ์ค‘๋ณต์ด ์ƒ๊ธฐ๋Š”๋ฐ ์ด๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ์ •๊ทœํ™” ๊ณผ์ •์„ ๊ฑฐ์น  ์ˆ˜ ์žˆ๋‹ค. ์ œ 1์ •๊ทœํ™”๋Š” ๋ฐ์ดํ„ฐ์˜ ์ค‘๋ณต์„ ์ œ๊ฑฐํ•˜๊ธฐ ์œ„ํ•ด pk์™€ fk๋กœ ๊ตฌ์„ฑ๋œ ํ…Œ์ด๋ธ”๋กœ ๋ถ„๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค. ์ œ 2์ •๊ทœํ™”๋Š” ๋ณตํ•ฉํ‚ค์—์„œ ๋‚˜ํƒ€๋‚˜๋ฉฐ ๋ณตํ•ฉํ‚ค ์ค‘ ํ•˜๋‚˜์—๋งŒ ์ข…์†์ ์ด๋ผ๋ฉด ํ…Œ์ด๋ธ”์„ ๋ถ„๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค. ์ œ 3์ •๊ทœํ™”๋Š” ์ผ๋ฐ˜ ์ปฌ๋Ÿผ๊ฐ„์˜ ์ข…์†์ • ๊ด€๊ณ„๊ฐ€ ์ƒ๊ธฐ๋ฉด ํ…Œ์ด๋ธ”์„ ๋ถ„๋ฆฌ์‹œํ‚ฌ ์ˆ˜ ์žˆ๋‹ค. 

    ์ €์ž‘์žํ‘œ์‹œ ๋น„์˜๋ฆฌ ๋ณ€๊ฒฝ๊ธˆ์ง€ (์ƒˆ์ฐฝ์—ด๋ฆผ)
      'DB' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
      • [DB] ์ œ 2์ •๊ทœํ™”
      • [DB] ์ œ 1์ •๊ทœํ™”
      • [DB] 1:1 ๊ด€๊ณ„ ์„ค๊ณ„
      • [DB] ํ…Œ์ด๋ธ”์˜ M:N ์„ค๊ณ„
      ๋ฒ ์–ด_
      ๋ฒ ์–ด_
      Today I learned | ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๊ฐœ๋ฐœ์ž

      ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”