13강 / 20강

SQLite3 — 파일 하나가 곧 데이터베이스

풀스택 뼈대 ① 진실을 보관하는 층

SQLite3 — 파일 하나가 곧 데이터베이스
설치도, 서버도 필요 없습니다. 파일 한 개면 끝.

MySQL이나 PostgreSQL을 쓰려면 서버 프로그램을 설치하고, 켜고, 계정을 만들고, 포트를 열어야 합니다. 처음 배우는 사람에게는 시작하기도 전에 지치는 과정이죠.

SQLite는 그 모든 걸 없앴습니다.

📄파일 하나

school.db 하나가 데이터베이스 전체. 복사하면 그게 백업입니다.

🔌서버 없음

별도 프로그램이 돌지 않습니다. 여러분의 코드가 파일을 직접 읽고 씁니다.

🐍파이썬 기본 포함

import sqlite3 한 줄이면 준비 끝. 설치할 게 없습니다.

🌍세계 1위 배포량

스마트폰, 브라우저, 비행기 안에도 들어 있습니다. 1조 개 이상 쓰이는 중.

파이썬에서 쓰는 다섯 단계

import sqlite3

conn = sqlite3.connect("school.db")   # ① 연결 (파일이 없으면 새로 만듦)
cur  = conn.cursor()                   # ② 커서 = 명령을 전달하는 손
cur.execute("SELECT * FROM 학생")      # ③ SQL 실행
rows = cur.fetchall()                  # ④ 결과 받기
conn.commit(); conn.close()            # ⑤ 저장하고 닫기

commit()을 빼먹으면 바꾼 내용이 저장되지 않습니다. "연필로 쓴 뒤 볼펜으로 덧쓰기"라고 생각하면 기억하기 쉬워요.

① 표 만들기 — CREATE TABLE

▶ 실행을 눌러 여러분의 연습 DB에 학생 표를 만들어 보세요.

8강에서 그린 설계도를 실제로 실행합니다.
SQL 브라우저에서 실행

② 데이터 넣기 — INSERT

여러 줄을 한 번에 넣고 바로 확인합니다.
SQL 브라우저에서 실행

③ 찾기 — SELECT

SELECT는 SQL의 심장입니다. 문장 구조가 사람 말과 거의 같아요.

SELECT  무엇을     -- 어떤 칸을 볼까
FROM    어디서     -- 어떤 표에서
WHERE   조건       -- 어떤 줄만
ORDER BY 정렬      -- 어떤 순서로
LIMIT   개수;      -- 몇 개만
조건과 정렬을 함께 써 봅니다.
SQL 브라우저에서 실행

④ 집계 — 표 전체를 한 줄로 요약

COUNT · AVG · MAX · MIN — 통계 함수들.
SQL 브라우저에서 실행
GROUP BY — '~별로' 묶어서 계산.
SQL 브라우저에서 실행

⑤ 고치고 지우기 — UPDATE / DELETE

4강의 U와 D를 진짜 SQL로.
SQL 브라우저에서 실행

🗂️ 내 연습용 데이터베이스 들여다보기

지금까지 만든 표들이 서버에 실제로 저장되어 있습니다. 아래에서 내 DB에 어떤 표가 있고 각 표의 필드가 무엇인지 확인할 수 있어요. 꼬였다 싶으면 처음부터 다시 버튼으로 언제든 새 DB를 받을 수 있습니다.

내 연습용 데이터베이스 — 서버에 저장된 진짜 표들
불러오는 중…

🧪 자유 연습장

아래 셀은 완전히 비어 있습니다. 배운 것을 마음대로 시험해 보세요. 표를 새로 만들어도 좋고, JOIN을 연습해도 좋습니다. .tables 처럼 쓰고 싶다면 SELECT name FROM sqlite_master WHERE type='table'; 을 실행해 보세요.

자유 연습장 — 무엇이든 써 보세요.
SQL 브라우저에서 실행
🤔 확인 문제
SELECT 이름 FROM 학생 WHERE 점수 >= 90 ORDER BY 점수 DESC LIMIT 3; 의 결과는?