4.1 종합 프로젝트 실습

약 5분

본문 듣기
읽기 설정

글자 크기

줄 간격

글꼴

4.1 종합 프로젝트 실습

이 종합 프로젝트 실습에서는 여러분이 학습한 내용을 바탕으로 실제 데이터베이스를 설계하고 구현하는 작업을 수행합니다. 데이터베이스의 필요성과 SQL 쿼리가 어떻게 활용될 수 있는지를 이해하며, 회원 관리 시스템을 예로 들어 실습을 진행하겠습니다.

데이터베이스 설계

  1. 데이터베이스의 필요성
    데이터베이스는 데이터를 조직적으로 저장하며, 필요할 때마다 쉽게 검색하고 관리할 수 있도록 만들어줍니다.
    예를 들어, 여러분이 웹사이트에서 회원가입을 하면 이름, 이메일, 비밀번호 등의 정보가 서버에 저장되어야 합니다.

  2. ERD 설계
    간단한 회원 관리 시스템을 구축하기 위해 ERD를 설계합니다.

    • 회원(Member) 테이블: id(PK), name, email, password, created_at
    • 주문(Order) 테이블: id(PK), member_id(FK), product_name, order_date

SQL 쿼리 예제

  • 데이터베이스 및 테이블 생성
CREATE DATABASE membership;
USE membership;

CREATE TABLE Member (
    id INT AUTO_INCREMENT PRIMARY KEY,
    name VARCHAR(50) NOT NULL,
    email VARCHAR(100) NOT NULL UNIQUE,
    password VARCHAR(255) NOT NULL,
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

CREATE TABLE `Order` (
    id INT AUTO_INCREMENT PRIMARY KEY,
    member_id INT NOT NULL,
    product_name VARCHAR(100) NOT NULL,
    order_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    FOREIGN KEY (member_id) REFERENCES Member(id)
);
  • 실행 결과
    | 테이블명 | 상태 |
    |-----------|------|
    | Member | 생성 완료 |
    | Order | 생성 완료 |

구현 실습

이제 여러분이 직접 회원과 주문 정보를 삽입하고 관리하는 기능을 구현해보세요.

  1. 3명의 회원을 추가하세요.
  2. 각 회원이 최소 2개의 주문을 생성하도록 추가하세요.

SQL 문장 예제

INSERT INTO Member (name, email, password) VALUES
('홍길동', 'hong@example.com', 'password1'),
('이순신', 'lee@example.com', 'password2'),
('강감찬', 'gang@example.com', 'password3');

INSERT INTO `Order` (member_id, product_name) VALUES
(1, '상품 A'),
(1, '상품 B'),
(2, '상품 C'),
(2, '상품 D'),
(3, '상품 E');
  • 실행 결과
    | 테이블명 | 상태 |
    |-----------|------|
    | Member | 3명 추가 완료 |
    | Order | 5개 주문 추가 완료 |

데이터 조회

모든 회원과 그들의 주문을 조회하기 위해 JOIN 쿼리를 사용합니다.

SELECT M.name, O.product_name
FROM Member M
JOIN `Order` O ON M.id = O.member_id;

이 쿼리를 실행하면 각 회원과 그들이 주문한 상품이 함께 표시됩니다.

이제 여러분은 위의 단계를 따라 SQL 쿼리를 작성하고, 데이터베이스를 설계 및 구현해 보세요. 실습 문제를 통해 여러분의 이해도를 높이고, 데이터베이스 관리의 기초를 확립할 수 있습니다.

댓글 0

댓글을 남기려면 로그인하세요.

아직 댓글이 없습니다. 첫 댓글을 남겨보세요.