Database

κΉ€ν•œμ€€Β·2021λ…„ 6μ›” 17일
0

πŸš€ Database

  • 컴퓨터 μ‹œμŠ€ν…œμ— μ €μž₯된 정보 λ˜λŠ” λ°μ΄ν„°μ˜ 집합
  • RDBMS (Relational Databse Management System) - 데이터λ₯Ό μ„œλ‘œ μƒν˜Έκ΄€λ ¨μ„±μ„ 가진 ν˜•νƒœλ‘œ ν‘œν˜„ν•œ 데이터
    Β 
    λͺ¨λ“  λ°μ΄ν„°λŠ” 2차원 ν…Œμ΄λΈ”λ£Œ ν‘œν˜„ κ°€λŠ₯
    Β 
    Row & Column
  • Row - ν•­λͺ©μ˜ μ‹€μ œ κ°’
  • Column - ν…Œμ΄λΈ”μ˜ 각 ν•­λͺ©

One to One

ν…Œμ΄λΈ” A의 λ‘œμš°μ™€ ν…Œμ΄λΈ” B의 λ‘œμš°κ°€ μ •ν™•νžˆ μΌλŒ€μΌ 맀칭이 λ˜λŠ” 관계λ₯Ό one to one

One to Many

ν…Œμ΄λΈ” A의 λ‘œμš°κ°€ ν…Œμ΄λΈ” B의 μ—¬λŸ¬ λ‘œμš°μ™€ 연결이 λ˜λŠ” 관계λ₯Ό one to many

Many to Many

ν…Œμ΄λΈ” A의 μ—¬λŸ¬ λ‘œμš°κ°€ ν…Œμ΄λΈ” B의 μ—¬λŸ¬ λ‘œμš°μ™€ 연결이 λ˜λŠ” 관계 many to many

ν…Œμ΄λΈ”λΌλ¦¬ μ—°κ²°

  • Foreign Key λ₯Ό μ‚¬μš©ν•΄μ„œ μ—°κ²°
  • μ•žμ„œ λ³Έ one to one μ˜ˆμ—μ„œ user_profiles ν…Œμ΄λΈ”μ˜ user_id μ»¬λŸΌμ€ users ν…Œμ΄λΈ”μ— κ±Έλ €μžˆλŠ” μ™ΈλΆ€ 킀라고 μ§€μ •ν•©λ‹ˆλ‹€.
  • 즉 λ°μ΄ν„°λ² μ΄μŠ€μ—κ²Œ user_id의 값은 users ν…Œμ΄λΈ”μ˜ id 값이며 κ·ΈλŸ¬λ―€λ‘œ users ν…Œμ΄λΈ”μ˜ id μ»¬λŸΌμ— μ‘΄μž¬ν•˜λŠ” κ°’λ§Œ 생성될 수 μžˆμŠ΅λ‹ˆλ‹€.
  • 만일 users ν…Œμ΄λΈ”μ— μ—†λŠ” id 값이 user_id 에 μ§€μ •λ˜λ©΄ μ—λŸ¬κ°€ λ°œμƒν•©λ‹ˆλ‹€.

ν…Œμ΄λΈ”μ„ μ—°κ²°ν•˜λŠ” 이유

  • 쀑볡을 ν”Όν•˜κΈ° μœ„ν•΄. μ€‘λ³΅λœ 정보가 λ§Žμ„μˆ˜λ‘ 더 λ§Žμ€ λ””μŠ€ν¬λ₯Ό μ‚¬μš©ν•˜κ³  잘λͺ»λœ 데이터가 μ €μž₯ 될 κ°€λŠ₯성이 높아짐
  • Nomalization - μ€‘λ³΅λœ 데이터λ₯Ό κ±°λ₯΄κ³  λ””μŠ€ν¬λ₯Ό 효율적으둜 μ‚¬μš©

0개의 λŒ“κΈ€