앱에 데이터를 영구 저장하는 방법을 배웁니다. 데이터베이스 최소 개념, AI에게 스키마·CRUD 생성 요청, 마이그레이션 주의사항, 데이터는 함부로 지우지 않는 이유.
💾 데이터가 사라지면 앱이 아니다
지금까지 만든 기능들은 새로고침하면 데이터가 사라집니다. localStorage로 잠깐 유지할 수 있지만, 여러 기기에서 공유하거나 서버에서 처리해야 할 데이터가 생기면 데이터베이스가 필요합니다. 이번 강의에서는 데이터베이스의 기본 개념과 AI를 활용한 데이터 저장 구현 방법을 배웁니다.
🗂️ 데이터베이스 최소 개념
데이터베이스는 데이터를 구조적으로 저장하는 창고입니다. 스프레드시트와 비슷하게 생각하면 됩니다 — 행(row)에 데이터가 들어가고, 열(column)에 데이터의 속성이 들어갑니다.
| 개념 | 스프레드시트 비유 | 설명 |
|---|---|---|
| 테이블(Table) | 시트 | 관련 데이터의 묶음 (예: users 테이블) |
| 행(Row) | 행 | 데이터 하나 (예: 사용자 한 명) |
| 열(Column) | 열 | 데이터의 속성 (예: name, email) |
| 기본키(PK) | 행 번호 | 각 행을 구분하는 고유 ID |
데이터베이스의 데이터를 다루는 4가지 기본 작업은 CRUD입니다: Create(추가), Read(조회), Update(수정), Delete(삭제).
🤖 AI에게 스키마 설계 요청하기
어떤 테이블이 필요한지도 AI에게 추천받을 수 있습니다:
시간 추적 앱의 데이터베이스 스키마를 설계해줘. 기능: 사용자 계정, 클라이언트(고객사) 관리, 프로젝트 관리, 작업 시간 기록. 각 테이블에 어떤 컬럼이 필요한지, 테이블 간의 관계도 포함해서 설명해줘.
AI가 테이블 구조와 관계(예: 사용자 1명 → 여러 클라이언트 → 여러 프로젝트 → 여러 시간 기록)를 설계해줍니다.
🔧 CRUD 코드 생성 요청
스키마가 결정되면 CRUD 코드를 만들어달라고 합니다:
Prisma + PostgreSQL(Supabase) 환경이야. time_entries 테이블에 대해 다음을 만들어줘:
- 새 기록 추가 (시작 시각, 종료 시각, 프로젝트 ID, 설명)
- 날짜 범위로 기록 조회
- 기록 수정 (종료 시각, 설명 변경)
- 기록 삭제
⚠️ 마이그레이션 주의 — 스키마 변경은 신중하게
데이터베이스 스키마(테이블 구조)를 변경할 때 각별히 주의해야 합니다. 잘못된 스키마 변경은 기존 데이터를 삭제하거나 앱을 다운시킬 수 있습니다.
안전한 스키마 변경 원칙:
- 열 추가는 비교적 안전합니다 (기존 데이터 영향 없음).
- 열 이름 변경, 삭제는 위험합니다 — 그 열을 참조하는 코드가 모두 깨집니다.
- 테이블 삭제는 데이터가 영구 삭제됩니다. 백업 없이는 절대 하지 마세요.
AI에게 스키마 변경을 요청할 때도 반드시 명시하세요:
users 테이블에 avatar_url 컬럼을 추가하려고 해. 기존 데이터는 건드리지 않아야 해. 마이그레이션 SQL과 Prisma 스키마 변경 방법을 알려줘.
🚫 데이터는 함부로 지우지 마라
개발 중 "이 데이터 필요 없으니 지워줘"라는 요청을 AI에게 하기 전에 한 번 더 생각하세요. 삭제된 데이터는 복구가 매우 어렵습니다.
삭제 대신 쓰는 패턴 — 소프트 딜리트(Soft Delete):
-- 실제 삭제 대신 deleted_at 시각 기록
UPDATE time_entries SET deleted_at = NOW() WHERE id = 123;
-- 조회 시 deleted_at이 NULL인 것만 가져옴
SELECT * FROM time_entries WHERE deleted_at IS NULL;
이 방식으로 하면 "삭제"된 데이터도 나중에 복구할 수 있고, 실수로 삭제해도 되돌릴 수 있습니다.
✅ 정리
- 데이터베이스는 테이블·행·열로 구성되는 데이터 창고입니다.
- 스키마 설계와 CRUD 코드 생성 모두 AI에게 맡길 수 있습니다.
- 스키마 변경(열 삭제, 테이블 삭제)은 신중하게, 백업 후에 하세요.
- 데이터 삭제는 소프트 딜리트를 사용해 복구 가능성을 남겨두세요.
관련 주제
- 데이터베이스 기본 개념
- 테이블 행 열
- CRUD
- 스키마 설계 요청
- 마이그레이션 주의사항
- AI 기술
- AI 기술 강의
- 바이브 코딩 입문 — AI와 함께 만드는 첫 소프트웨어
- 무료강의
- 무료 온라인 강의
- NUGUNA
- 누구나
댓글
불러오는 중...
