JSCODE Logo
프로그래밍 과외블로그후기멘토진
회사명 : JSCODE대표 : 박재성사업자 등록번호 : 244-22-01557통신판매업 : 제 2023-인천미추홀-0381 호
학원 명칭 : 제이에스코드(JSCODE)원격학원학원설립ㆍ운영 등록번호 : 제6063호

서울특별시 구로구 경인로 20가길 11(오류동, 아델리아)

Copyright ⓒ 2025 JSCODE - 최상위 현업 개발자들의 프로그래밍 교육 All rights reserved.

이용약관개인정보처리방침
← 블로그 목록으로 돌아가기

저장할 데이터 파악하기 /

JSCODE 박재성
JSCODE 박재성
2025-12-06
author
JSCODE 박재성
category
DB 설계
createdAt
Dec 6, 2025
series
비전공자도 이해할 수 있는 DB 설계 입문/실전
slug
identify-and-group-data
type
post
updatedAt
Dec 6, 2025 05:57 AM

✅ 요구 사항

🧑🏻
현업에서 아래와 같이 글로만 된 요구 사항만 가지고 DB 설계를 하는 일은 잘 없다. UI(화면) 디자인이 나왔을 때 UI 디자인을 보면서 DB 설계에 들어가는 편이다. 하지만 지금은 연습을 하기 위함이니까 아래 요구사항만 가지고 설계를 해보자.
  • 회원가입 기능
    • 회원가입을 할 때 이메일, 비밀번호, 이름의 정보를 받는다.
  • 로그인 기능
    • 로그인할 때 이메일, 비밀번호를 활용해서 로그인한다.
  • 게시글 작성 기능
    • 로그인한 사용자만 게시글을 작성할 수 있다.
    • 게시글에는 제목과 내용을 작성할 수 있다.
  • 게시글 조회 기능
    • 작성자, 게시글 제목, 게시글 내용, 게시글 작성 시간을 조회할 수 있어야 한다.
 
 

✅ 저장할 데이터 파악하기

🧑🏻
요구사항을 보면서 데이터베이스에 어떤 데이터를 저장해두어야 할 지 파악하는 게 가장 먼저다. 어떤 데이터를 저장해두어야 하는 지 파악해야, 어떤 방식으로 데이터를 분류해서 저장할 지 결정할 수 있다.
  • 회원가입 기능
    • 회원가입을 할 때 이메일, 비밀번호, 이름의 정보를 받는다.
  • 로그인 기능
    • 로그인할 때 이메일, 비밀번호를 활용해서 로그인한다.
  • 게시글 작성 기능
    • 로그인한 사용자만 게시글을 작성할 수 있다.
    • 게시글에는 제목과 내용을 작성할 수 있다.
  • 게시글 조회 기능
    • 게시글 제목, 게시글 내용, 게시글 작성 시간, 작성자를 조회할 수 있어야 한다.
 

✅ 그룹핑해서 분류하기

🧑🏻
저장해야 하는 데이터를 묶어서 그룹핑 할 수 있는 상위 개념을 찾아야 한다. 이렇게 그룹핑 된 하나의 그룹을 보고 데이터베이스에서는 엔티티(Entity)라고 얘기한다. 엔티티(Entity)가 데이터베이스의 테이블(Table)이라고 생각해도 된다.
이메일, 비밀번호, 이름 → 사용자
작성자, 게시글 제목, 게시글 내용, 게시글 작성 시간 → 게시글
 
 

✅ 테이블로 나타내기

users (사용자)
id
이메일
비밀번호
이름
ㅤ
ㅤ
ㅤ
ㅤ
ㅤ
ㅤ
ㅤ
ㅤ
 
posts (게시글)
id
제목
내용
작성 시간
작성자
ㅤ
ㅤ
ㅤ
ㅤ
ㅤ
ㅤ
ㅤ
ㅤ
ㅤ
ㅤ
 
author
category
DB 설계
createdAt
Dec 6, 2025
series
비전공자도 이해할 수 있는 DB 설계 입문/실전
slug
type
series-footer
updatedAt
Dec 6, 2025 05:57 AM
📎
이 글은 비전공자도 이해할 수 있는 DB 설계 입문/실전 강의의 수업 자료 중 일부입니다.