본문 바로가기
강의 실습/비전공자도 이해할 수 있는 DB 설계 입문 실전

[실습] 화면 UI 디자인을 보고 DB 설계해보기 - JSCODE 투두리스트

by jint 2026. 3. 8.

1. 화면 UI 디자인
[인프런 DB 설계 강의] JSCODE 투두리스트 : 강의에서 참고



2. 디자인 보고 테이블 설계
1) 그룹핑
- users (사용자)
id / 계정 / 패스워드 / 프로필 사진

- tasks (임무)
id / 제목 / 설명 / 마감 날짜 / 우선순위 / 완료여부 (true: 완료, false: 미완료) / 카테고리 / 사용자 id (FK)

- categories (카테고리)
id / 이름 / 아이콘 / 색깔

- focus_histories (집중 시간 히스토리)
id / 집중한 시간 / 기록 날짜

* 데이터베이스에 저장해야하는 데이터인지 판단하기 어려울 때
자주 바뀌는 정보인지 확인한 후, 자주 바뀌면 저장하기
-> 기획자, 프론트엔드 개발자와 협의 필요

2) 임의의 데이터 넣으며 중복 체크하여 테이블 분리
- users (사용자)

id 계정 패스워드 프로필 사진
1 wlstjd password (URL)
2 wlstjd12 password (URL)
3 wlstjd123 password (URL)


- tasks (임무)

id 제목 설명 마감 날짜 우선순위 완료여부
(true: 완료, false: 미완료)
카테고리 id (FK) 사용자 id (FK)
1 양치하기 양치 잘하기 24.05.22 23:00:00 1 false 1 3
2 양치하기 양치 잘하기 24.05.22 23:00:00 2 false 1 3
3 양치하기 양치 잘하기 24.05.22 23:00:00 3 true 1 3


- categories (카테고리)

id 이름 아이콘 색깔 id (FK)
1 Home (외부 URL) 1
2 University (외부 URL) 1
3 Work (외부 URL) 1


- colors (색깔)

id 색깔코드
1 RED
2 BLUE
3 GREEN


- focus_histories (집중 시간 히스토리)

id 집중한 시간 (단위 : 분) 기록 날짜 사용자 id (FK)
1 50 23.10.08 23:05:01 1
2 30 23.10.08 23:05:01 1


* 날짜 데이터는 시간도 함께 기록하는게 서비스 운영하는데 좋다.

관계 파악1)
임무, 카테고리

#1 엔티티 간에 어울리는 동사 찾기
임무는 카테고리를 "가진다."
카테고리는 임무에 "속한다."

#2 찾은 동사를 활용해 적절한 단어(하나의 or 여러 개의) 찾기
하나의 임무는 "하나의" 카테고리를 가진다.
하나의 카테고리는 "여러 개의" 임무에 속한다.

#3 관계 판단
임무 : 카테고리 = N : 1


참고링크 : https://www.inflearn.com/course/%EB%B9%84%EC%A0%84%EA%B3%B5%EC%9E%90-db-%EC%84%A4%EA%B3%84-%EC%9E%85%EB%AC%B8?cid=335049

 

비전공자도 이해할 수 있는 DB 설계 입문/실전| JSCODE 박재성 - 인프런 강의

현재 평점 4.9점 수강생 1,510명인 강의를 만나보세요. 비전공자 입장에서도 쉽게 이해할 수 있고, 실전에서 바로 적용 가능한 'DB 설계 입문/실전' 강의를 만들어봤습니다! 복잡한 개념을 몰라도

www.inflearn.com

댓글