DB - Intro

Kjjedd·2026년 1월 4일

DB

목록 보기
1/11
post-thumbnail

🗄️ 데이터베이스(Database) 입문

데이터베이스는 개발을 처음 배우는 사람에게
생각보다 훨씬 추상적이고 멀게 느껴지는 개념이다.

“그냥 파일에 저장하면 안 되나?”
“엑셀로 관리하면 되는 거 아닌가?”

데이터베이스가 왜 필요한지, 그리고 왜 ‘파일 저장’과는 본질적으로 다른지


🤔 왜 데이터베이스가 필요할까?

문제 상황부터 상상해보자

카페 주문 시스템을 만든다고 가정해보자.

  • 고객 정보 저장
  • 주문 내역 저장
  • 상품 목록 관리

처음에는 간단하다.
그냥 파일에 저장하면 될 것 같다.

❌ 하지만 곧 문제가 터진다

  • 프로그램을 종료하면 데이터가 사라진다 😢
  • 고객이 10만 명이면 찾는 데 시간이 너무 오래 걸린다 😰
  • 여러 직원이 동시에 주문을 받으면 파일이 꼬인다 😱

이 모든 문제를 해결하기 위해 등장한 것이
데이터베이스(Database)다.


📁 파일 저장 vs 🗄️ 데이터베이스

비교 항목 파일 저장 데이터베이스
검색 속도 처음부터 끝까지 읽음 인덱스로 즉시 검색
동시 접근 한 명만 가능 여러 명 동시에 가능
데이터 양 커질수록 느려짐 수백만 건도 안정적
안정성 손상 시 복구 어려움 백업·복구 시스템 내장

👉 쉽게 말하면
파일 저장은 개인 노트,
데이터베이스는 도서관이다


📦 데이터베이스의 한 줄 정의

데이터베이스(Database)는
데이터를 체계적으로 저장·검색·관리하기 위한 프로그램이다

우리가 매일 쓰는 거의 모든 서비스는
데이터베이스 위에서 동작한다.

서비스저장되는 데이터
🛒 쇼핑몰상품, 주문, 회원 정보
💬 메신저채팅 기록, 친구 목록
🏦 은행계좌, 거래 내역
📺 스트리밍영상 정보, 시청 기록

📊 데이터베이스의 기본 구조

데이터베이스는 보통 다음 구조로 이루어진다.

  • Database → 테이블들의 묶음
  • Table → 데이터를 저장하는 표
  • Column(열) → 데이터의 종류
  • Row(행) → 실제 데이터 1건

엑셀로 비유하면 이해가 쉽다.

  • Database → 엑셀 파일
  • Table → 시트
  • Column → 열 제목
  • Row → 한 줄의 데이터

🔑 Primary Key (기본 키)

데이터베이스에서 가장 중요한 개념 중 하나다.

Primary Key
각 행(Row)을 유일하게 구분하는 값이다

  • 중복될 수 없다
  • 비어 있을 수 없다
  • 보통 id라는 이름의 숫자

사람으로 치면 주민등록번호와 같다.


🧱 데이터 타입(Data Type)

컬럼에는 아무 데이터나 들어갈 수 없다.
어떤 종류의 데이터인지 미리 정의해야 한다.

타입설명예시
INT정수1, 100
VARCHAR짧은 문자열"홍길동"
TEXT긴 문자열게시글 내용
DATE날짜2025-12-29
DATETIME날짜+시간2025-12-29 14:30

🔄 CRUD — 데이터베이스의 4가지 기본 작업

데이터베이스에서 하는 모든 일은
딱 네 가지로 정리된다.

작업의미예시
Create생성회원가입
Read조회게시글 보기
Update수정프로필 변경
Delete삭제회원 탈퇴

👉 앞으로 배우는 모든 SQL은
CRUD 중 하나


🔗 관계형 데이터베이스(RDBMS)

대부분의 실무 DB는
관계형 데이터베이스다.

관계형 DB란?
테이블 간의 관계를 연결할 수 있는 데이터베이스

예를 들어,

  • users 테이블
  • orders 테이블

주문 테이블에 user_id를 두면,
“누가 주문했는지”를 연결할 수 있다.

👉 중복을 줄이고,
👉 데이터 정합성을 유지한다


💬 SQL이란?

SQL은 데이터베이스와 대화하는 언어다.

  • SELECT → 조회
  • INSERT → 추가
  • UPDATE → 수정
  • DELETE → 삭제

중요한 특징이 하나 있다.

SQL은 “어떻게”가 아니라
“무엇을” 원하는지 말하는 언어


🧠 핵심 정리

  • 파일 저장은 단순하다
  • 데이터베이스는 체계적이다
  • 테이블 구조는 질서를 만든다
  • Primary Key는 정체성을 만든다
  • CRUD는 모든 동작의 본질이다

🗄️ “데이터베이스는 데이터를 쌓는 기술이 아니라,
데이터를 ‘질서 있게 관리하는 기술’이다”

profile
Gongbuhaja

0개의 댓글