같은 users 테이블을 보는 순서

먼저 저장 틀을 정하고, 그 틀 안에 현재 데이터가 들어오며, 둘의 변화 속도는 다릅니다

스키마와 인스턴스를 구분하면 “설계 변경”과 “운영 중 데이터 변화”를 서로 다른 일로 읽을 수 있습니다.

1. 스키마

어떤 칸을 만들지 정의

테이블 이름, 컬럼 타입, 키, 관계처럼 데이터가 따라야 할 구조 규칙을 정합니다.

users (
  id INT PRIMARY KEY,
  name VARCHAR(50),
  created_at DATE
)
무엇인가 데이터베이스의 청사진
언제 바뀌나 마이그레이션이나 설계 수정 때
2. 인스턴스

그 칸에 들어온 현재 값

정의된 구조에 맞춰 저장된 실제 행입니다. 사용자의 동작에 따라 계속 달라집니다.

id | name | created_at
1  | Kim  | 2026-04-20
2  | Lee  | 2026-04-21
무엇인가 지금 시점의 운영 데이터
언제 바뀌나 INSERT, UPDATE, DELETE가 일어날 때마다
3. 읽는 법

틀과 내용물을 따로 본다

같은 users 테이블이라도 바뀐 대상이 구조인지 값인지 구분해야 DB 변화의 의미가 정확해집니다.

스키마 변경 컬럼 추가, 타입 변경, 제약 조건 수정처럼 구조 자체가 달라집니다.
인스턴스 변경 회원 가입, 이름 수정, 삭제처럼 저장된 내용물만 달라집니다.
핵심 비유 스키마 = 틀 인스턴스 = 내용물