데이터베이스 (Database)

별칭: database · 데이터베이스 · DB

앱에서 만든 데이터를 새로고침 후에도 남기기 위해 구조적으로 저장하는 시스템.

데이터베이스는 사용자의 저장 항목, 계정, 설정, 주문, 게시글처럼 계속 남아야 하는 데이터를 관리한다. 수업에서는 관심 항목 저장 버튼이 임시 상태를 넘어 Supabase DB에 기록되는 순간을 DB 코어로 설명한다.

정의

데이터베이스는 데이터를 구조적으로 저장하고 검색·수정·삭제할 수 있게 하는 시스템이다. 웹앱에서는 사용자 계정, 저장 목록, 게시글, 주문, 설정, 로그처럼 새로고침이나 재접속 후에도 남아야 하는 정보를 데이터베이스에 둔다.

왜 중요한가

처음 만든 화면은 브라우저 상태만으로도 그럴듯하게 보일 수 있다. 하지만 저장 버튼을 눌렀는데 새로고침하면 사라진다면 사용자는 서비스를 신뢰하지 못한다. 데이터베이스를 붙이면 사용자의 선택이 서버에 남고, 다른 기기에서도 다시 불러올 수 있다.

Semiclass에서의 의미

DB 코어 단계에서는 생활정보 보드의 관심 항목을 Supabase 테이블에 저장한다. 이때 source_id, title, category, owner_id 같은 필드를 설계하며, 이후 신원 인장 단계에서 로그인한 사용자별로 자기 저장 목록만 보이게 만든다.

주의할 점

데이터베이스는 단순 저장소가 아니라 권한과 무결성의 중심이다. 누구나 모든 행을 읽거나 수정할 수 있게 두면 서비스 데이터가 쉽게 노출된다. 공개 웹앱에서는 인증, 권한, RLS 같은 보호 장치를 함께 설계해야 한다.

출처