약 6분
읽기 설정
글자 크기
줄 간격
글꼴
1.1 데이터 저장의 필요성
데이터베이스는 웹 애플리케이션의 핵심 요소 중 하나로, 정보를 체계적으로 저장하고 관리하는 수단입니다. 웹 개발에서 데이터 저장의 필요성을 이해하기 위해, 이전에는 단순히 파일 시스템에 데이터를 저장하던 방식을 이해하고, 현재 데이터베이스를 사용하는 이유를 명확히 해야 합니다.
데이터 저장의 개념
초기 웹 애플리케이션에서는 데이터가 텍스트 파일이나 다양한 형식의 파일들로 분산되어 저장되었습니다. 이러한 방식은 다음과 같은 문제를 일으킵니다:
- 데이터 중복: 동일한 데이터가 여러 파일에 존재할 수 있음
- 데이터 무결성: 파일 간 데이터의 일관성이 깨질 수 있음
- 접근성 및 검색 문제: 특정 데이터를 찾기 위해 모든 파일을 확인해야 함
이러한 문제를 해결하기 위해 데이터베이스가 필요합니다. 데이터베이스를 사용하면:
- 데이터를 중앙 집중화하여 관리
- 데이터 무결성을 유지
- 효율적으로 데이터에 접근하고 처리할 수 있음
예제: 데이터 저장의 필요성
가상의 쇼핑몰 웹 애플리케이션을 생각해 봅시다. 고객, 제품, 주문 정보를 관리해야 합니다. 이를 각각의 파일로 관리한다면 다음과 같은 문제가 발생할 수 있습니다:
- 고객 정보가 여러 파일에 산재되어 있어 업데이트가 번거롭습니다.
- 주문 정보를 조회할 때 각 파일을 열어봐야 하므로 비효율적입니다.
반면, 관계형 데이터베이스를 사용하면 고객, 제품, 주문을 각각 테이블로 분리하여 관리할 수 있습니다. 이들 간의 관계를 설정함으로써 데이터를 통합적으로 관리할 수 있게 됩니다.
실습: 기본 테이블 생성하기
이제 MySQL에서 간단한 테이블을 만들어보겠습니다.
- 데이터베이스 생성하기
CREATE DATABASE shopping;
- 데이터베이스를 선택합니다.
USE shopping;
- 고객 테이블 생성하기
CREATE TABLE customers (
customer_id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(100) NOT NULL,
email VARCHAR(100) NOT NULL UNIQUE
);
- 제품 테이블 생성하기
CREATE TABLE products (
product_id INT AUTO_INCREMENT PRIMARY KEY,
product_name VARCHAR(100) NOT NULL,
price DECIMAL(10, 2) NOT NULL
);
데이터 변화:
아래 표는 고객 테이블과 제품 테이블의 생성 전후 상태입니다.
| 테이블명 | 상태 |
|---|---|
| customers | 비어 있음 |
| products | 비어 있음 |
이렇게 테이블을 생성한 후, 이제 데이터를 삽입해보겠습니다.
프로젝트: 간단한 고객 데이터 관리하기
간단한 고객 데이터를 추가하고 조회해 보겠습니다.
- 고객 데이터 삽입하기
INSERT INTO customers (name, email) VALUES
('홍길동', 'hong@exmaple.com'),
('김철수', 'kim@exmaple.com');
- 고객 데이터 조회하기
SELECT * FROM customers;
실행 결과:
고객 데이터 삽입 후의 상태입니다.
| customer_id | name | |
|---|---|---|
| 1 | 홍길동 | hong@exmaple.com |
| 2 | 김철수 | kim@exmaple.com |
이처럼, 데이터베이스를 사용하여 데이터를 효율적으로 관리하고, 쉽게 접근할 수 있는 방법을 확인했습니다.
정리
이 강의를 통해 데이터 저장의 필요성과 데이터베이스 사용의 장점을 이해하게 되었습니다. 실제 데이터베이스 테이블을 만들어 고객 정보를 관리해보며 데이터의 구조와 저장 방법을 경험했습니다. 다음 강의에서는 SQL의 기초적인 문법을 이어서 학습할 것입니다.
댓글 0
아직 댓글이 없습니다. 첫 댓글을 남겨보세요.