텅 빈 DB에 쇼핑몰 데이터,
스크립트 한 번에 적재하기
강의 전체에서 같이 쓸 쇼핑몰 샘플 데이터를 한 번에 넣습니다. 회원·상품·주문 — 진짜 쇼핑몰처럼 구성된 5테이블. 한 번 넣어두면 앞으로 모든 강의에서 이 데이터로 실습합니다.
이번 섹션의 여정
완료 ✓
완료 ✓
지금 여기
AI 과외 선생님
SQL 핵심 문법
지금 여러분 DB는 텅 비어 있습니다
이번 강의에서 넣을 데이터는 회원 20명 · 카테고리 5개 · 상품 30개 · 주문 40건 · 주문상세 64건 — 5테이블짜리 쇼핑몰입니다. 강의 전반에서 배울 모든 SQL 패턴(JOIN, GROUP BY, NULL 처리, 데이터 뻥튀기)이 이 구조에서 다 나옵니다.
다운로드 — init.sql 파일 하나
파일 하나면 됩니다. 아래 버튼으로 바로 받거나, 인프런 강의 페이지의 자료실 탭에서 init.sql을 받아도 돼요.
SQL 실행 창 열고 스크립트 넣기
DBeaver를 켜면 2-2에서 만든 MySQL 연결이 좌측에 있을 거예요. 데이터베이스를 따로 만들 필요 없이, 바로 SQL 실행 창부터 엽니다.
좌측 트리에서 MySQL 연결을 우클릭 → SQL Editor → New SQL Editor. 빈
SQL 실행 창이 열립니다.
sys 같은 시스템 DB를 고를 필요 없어요 — 스크립트가 USE shop 으로
알아서 잡습니다.
받아둔 init.sql 을 메모장(또는 편집기)으로 열어 전체 복사하고, 방금 연
SQL 창에 붙여넣으세요. (파일을 DBeaver 로 바로 열어도 됩니다.)
CREATE DATABASE, CREATE TABLE, INSERT INTO 가 잔뜩 든 긴 SQL 이 보일
거예요 — 무서워 마세요. 통째로 실행만 하면 됩니다.
스크립트 전체 실행 — 아이콘 한 번
여기가 이 강의의 핵심입니다. DBeaver 실행 버튼은 두 개인데, 차이만 알면 됩니다.
▶ Execute SQL Statement
커서가 있는 쿼리 한 문장만 실행합니다. 지금 누르면 첫 줄(SET NAMES utf8mb4;)만 돌고 끝나요.
▶▶ Execute SQL Script
스크립트 전체를 위에서부터 끝까지 실행합니다. init.sql 처럼 여러 쿼리가 든 파일은 이걸로.
SQL 창 위쪽 툴바에서 ▶▶ (Execute SQL Script) 아이콘을 클릭하세요. 하단에 실행 로그가 좌라락 흘러가고, 1–2초면 끝납니다.
실행 단축키는 OS·버전마다 달라서(Windows·Mac 이 제각각) 헷갈리기 쉽습니다. 반면 ▶▶ 아이콘은 어디서나 똑같아요 — Mac 사용자도 화면 그대로 따라오면 됩니다.
결과 확인 — shop DB와 5테이블
진짜 들어갔는지 눈으로 확인해볼게요. 좌측 사이드바에서 MySQL 연결을 우클릭 → Refresh (또는 F5) 하세요.
시스템 DB 4개 사이에 shop 이 생겼고, 펼치면 5테이블이 다 들어가 있습니다. 새 SQL 창을 하나 더 열어(연결 우클릭 → SQL Editor → New SQL Editor) 첫 실습 쿼리 —
| member_id | member_name | gender | age | joined_at |
|---|---|---|---|---|
| 1 | 김철수 | M | 35 | 2025-01-15 |
| 2 | 이영희 | F | 28 | 2025-02-03 |
| 3 | 박민수 | M | 42 | 2025-02-10 |
| ⋮ | ||||
한 문장만 실행하는 거니 이번엔 ▶ (Execute SQL Statement) 아이콘이면 됩니다 — 회원 10명이 표로 깔끔하게 뜹니다. 이름, 성별, 나이, 가입일까지.
MySQL 서버 + DBeaver + 쇼핑몰 샘플 데이터. 앞으로 모든 강의가 이 데이터로 진행됩니다. 마지막 준비물 하나(AI 과외 선생님)만 더 챙기면 섹션 2가 끝납니다.
회원이 주문을 낳고(members → orders), 주문이 주문상세를 낳고(orders → order_items), 카테고리가 상품을 낳는(categories → products) 구조 — 이 부모-자식 관계가 이 강의의 핵심 컨셉입니다. 섹션 4에서 본격적으로 다룹니다.
자주 막히는 지점
SELECT를 쳤는데 “DB를 선택 안 했다” 는 에러가 뜨는 경우. 기본 DB로
지정해두면 그 연결에서는 shop 이 기본이 됩니다.
USE shop; 한 줄 먼저 실행 — 또는 좌측 트리에서 shop 우클릭 → Set as Default.파일 자체가 utf8mb4 로 저장돼 있어 거의 안 깨지지만 — 드물게 발생합니다.
characterEncoding 을 UTF-8 로 명시.한 문장만 실행됐거나(▶ 를 눌렀거나) 중간에 멈춘 경우. init.sql 첫머리에
DROP DATABASE IF EXISTS 가 있어서 — 몇 번이고 다시 실행해도
안전합니다.
다음 강의에서는 방금 받은 init.sql을 AI에게도 던져줍니다. 강의 내내 옆에 두고 질문할 AI 과외 선생님을 만들고, 섹션 2를 마무리해요.