2023.12.18 TIL

Oneik·2023년 12월 18일
0
post-thumbnail

📕오늘 학습한 내용

  • RDBMS란?
  • 데이터베이스 설계

RDBMS(Rerational DataBase Management System)란?

  • 행과 열로 구성된 테이블에 데이터를 저장
  • 스키마(Schema)라는 틀에 따라 데이터를 저장
  • 테이블 간 형성된 관계를 통해, 데이터를 찾아갈 수 있다

데이터베이스 설계

정규화

  • 관계형 데이터베이스의 설계에서 중복을 최소화하도록 데이터를 구조화하는 프로세스

예를 들어, 게시글 테이블이 있다라고 해보자

게시글 번호제목소개작성자직업생년월일
1안녕하세요1도깨비공유영화 배우790710
2안녕하세요2저승사자이동욱영화 배우811106
3안녕하세요3도깨비 부인김고은영화 배우910702
1안녕하세요4도깨비공유영화 배우790710
1안녕하세요5커피집 사장공유커피집 사장850101

위의 테이블을 보면, 게시글의 작성자가 동명이인일 수 있고, 한명의 작성자가 여러 게시글을 작성할 수 도 있다.
필연적으로, 데이터를 중복 작성해야하는 경우가 발생하는데, 관계형 데이터베이스에서는 중복을 최소화 하기 위해 테이블을 쪼개서 데이터를 저장한 후, 관계를 설정할 수 있다.

예를 들어, 위의 게시글 테이블을 게시글과 사용자로 테이블을 나눴다고 해보자

  • 게시글 테이블
게시글 번호(PK)제목소개사용자 번호(FK)
1안녕하세요1도깨비1
2안녕하세요2저승사자2
3안녕하세요3도깨비 부인3
1안녕하세요4도깨비1
1안녕하세요5커피집 사장4
  • 사용자 테이블
사용자 번호(PK)작성자직업생년월일
1공유도깨비790710
2이동욱저승사자811106
3김고은도깨비 부인910702
4공유커피집 사장850101

위처럼 테이블을 쪼갠 후 관계를 설정한다면, 중복되던 직업과 생년월일을 없앨 수 있고 동명이인 이더라도 구별할 수 있다

즉, 정규화란 데이터의 중복을 최소화하기 위해 테이블을 쪼갠것이다

PK(Primary Key)
해당 테이블의 각 행(row)을 유일(unique)하게 구분할 수 있는 Keyr값
FK(Foreign Key)
A테이블에서 B 테이블의 데이터를 찾아가고 싶을 때, 사용하는 Key값
즉, 외래키로 관계가 설정된 다른 테이블의 데이터를 얻을 수 있다

profile
초보 개발자의 블로그입니다

0개의 댓글

관련 채용 정보