root@hfairy:~$

[MySQL] 데이터베이스 구축 및 테이블 생성 본문

공부/빅데이터 분석

[MySQL] 데이터베이스 구축 및 테이블 생성

hfairy 2025. 7. 2. 03:02

MySQL을 기반으로 실습 진행하였으며 버전은 8.1.0이다.

(mysql --version)

 

데이터베이스 생성

CREATE DATABASE IF NOT EXISTS cosmetic_db;

 

'CREATE DATABASE'를 이용해 'cosmetic_db'라는 데이터베이스를 생성한다.

이때 중복 생성을 방지하기 위해 'IF NOT EXISTS' 옵션을 넣어 만약 'cosmetic_db'라는 데이터베이스가 존재한다면 새로 생성하지 않는다.

 

SHOW databases;

 

 

테이블 생성

# 어떤 db 내에서 SQL문을 실행할 것인지 설정
USE cosmetic_db;
# 테이블 생성
CREATE TABLE derma_review_tb (
    review_num int auto_increment primary key,
    review_text varchar(500),
    crawling_date datetime DEFAULT CURRENT_TIMESTAMP,
    url varchar(500)
    );

 

USE cosmetic_db

: 앞으로의 SQL문은 'cosmetic_db'  내에서 실행한다.

 

CREATE TABLE  derma_review_tb

: 'derma_review_tb'라는 테이블을 생성하였다. 

 

review_num int auto_increment primary key

: 'review_num'이라는 컬럼을 생성한다. 이 컬럼 내에는 정수형(int) 데이터가 새로운 행이 추가될 때마다 자동으로 1씩 증가( auto_increment)하여 저장되며, 이 값들은 고유한 값(primary key)을 가진다.

 

review_text varchar(500)

: 'review_text'라는 컬럼을 생성한다. 이 컬럼 내에는 가변 길이 문자열 데이터를 저장하며 최대 500자까지 저장할 수 있다.


crawling_date datetime DEFAULT CURRENT_TIMESTAMP

: ' crawling_date'라는 컬럼을 생성한다. 이 컬럼에는 날짜와 시간 정보(datetime)를 저장하며, 이 컬럼에 따로 값을 넣지 않으면 데이터가 저장되는 시각(DEFAULT CURRENT_TIMESTAMP)이 자동으로 입력되어 데이터 수집 시점을 기록한다.

 

url varchar(500)

: 'url'이라는 컬럼을 생성한다. 이 컬럼 내에는 가변 길이 문자열 데이터를 저장하며 최대 500자까지 저장할 수 있다.

 

 

컬럼 추가

ALTER TABLE derma_review_tb
ADD COLUMN site_name VARCHAR(50) after crawling_date,
ADD COLUMN product_name VARCHAR(50) after review_num,
ADD COLUMN review_date VARCHAR(50) after review_text;

ALTER TABLE derma_review_tb

: 'derma_review_tb'라는 테이블을 수정한다.


ADD COLUMN site_name VARCHAR(50) after crawling_date

: 'site_name'이라는 컬럼을 'crawling_date' 컬럼 바로 뒤에(after crawling_date) 추가한다. 데이터 타입은 VARCHAR이고 최대 50자까지의 문자열을 저장할 수 있다. 


ADD COLUMN product_name VARCHAR(50) after review_num

: 'product_name'이라는 컬럼을 'review_num'컬럼 바로 뒤에(after review_num) 추가한다. 데이터 타입은 VARCHAR이고 최대 50자까지의 문자열을 저장할 수 있다. 


ADD COLUMN review_date VARCHAR(50) after review_text

: 'review_date'라는 컬럼을 'review_text'컬럼 바로 뒤에(after review_text) 추가한다. 데이터 타입은 VARCHAR이고 최대 50자까지의 문자열을 저장할 수 있다. 

 

 

테이블 컬럼 확인

최종적으로 생성한 테이블의 컬럼을 확인하기 위해 아래와 같이 쿼리를 작성하였다.

USE cosmetic_db;
SHOW COLUMNS FROM derma_review_tb;

 

각 컬럼의 목적은 아래와 같다.

 

review_num(primary key): 고유번호

product_name: 제품명

review_text: 리뷰 내용

review_date: 리뷰 작성 일자

crawling_date: 크롤링한 날짜 및 시간

site_name: 크롤링한 사이트 이름(쿠팡, 네이버쇼핑 등)

url: 크롤링한 사이트 url