1) Fandom-K ERD

2) SQL문
CREATE DATABASE Fandom_K;
USE Fandom_K;
CREATE TABLE users (
user_id INT AUTO_INCREMENT PRIMARY KEY,
email VARCHAR(255) NOT NULL,
password_hash VARCHAR(255) NOT NULL
);
CREATE TABLE user_profiles (
user_id INT PRIMARY KEY,
name VARCHAR(50),
gender CHAR(2),
signup_date DATETIME,
birth_date DATE,
FOREIGN KEY (user_id) REFERENCES users(user_id)
);
CREATE TABLE idols (
idol_id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(50),
gorup VARCHAR(255),
gender VARCHAR(10),
agency VARCHAR(50),
birthday DATE
);
CREATE TABLE follow (
follow_id INT AUTO_INCREMENT PRIMARY KEY,
idol_id INT,
user_id INT,
FOREIGN KEY (idol_id) REFERENCES idols(idol_id),
FOREIGN KEY (user_id) REFERENCES users(user_id)
);
CREATE TABLE votes (
vote_id INT AUTO_INCREMENT PRIMARY KEY,
idol_id INT,
user_id INT,
time DATETIME,
start_date DATETIME,
end_date DATETIME,
FOREIGN KEY (idol_id) REFERENCES idols(idol_id),
FOREIGN KEY (user_id) REFERENCES users(user_id)
);
CREATE TABLE ads (
ad_id INT AUTO_INCREMENT PRIMARY KEY,
idol_id INT,
name VARCHAR(255),
start_date DATETIME,
end_date DATETIME,
donation INT,
category VARCHAR(50),
status VARCHAR(50),
FOREIGN KEY (idol_id) REFERENCES idols(idol_id)
);
CREATE TABLE donations (
donations_id INT AUTO_INCREMENT PRIMARY KEY,
ad_id INT,
user_id INT,
amount INT,
dona_date DATETIME,
status VARCHAR(10),
FOREIGN KEY (ad_id) REFERENCES ads(ad_id),
FOREIGN KEY (user_id) REFERENCES users(user_id)
);
CREATE TABLE payment_details (
payment_details_id INT AUTO_INCREMENT PRIMARY KEY,
user_id INT,
paid_at DATETIME,
provider VARCHAR(50),
card INT,
FOREIGN KEY (user_id) REFERENCES users(user_id)
);
CREATE TABLE payments (
charge_id INT AUTO_INCREMENT PRIMARY KEY,
payment_details_id INT,
amount INT,
exchange INT,
spread INT,
charge_date DATETIME,
charge_status VARCHAR(50),
charge_time TIME,
FOREIGN KEY (payment_details_id)
REFERENCES payment_details(payment_details_id)
);
CREATE TABLE credit_ledger (
credit_ledger_id INT AUTO_INCREMENT PRIMARY KEY,
vote_id INT,
donations_id INT,
user_id INT,
amount INT,
type VARCHAR(50),
created_at DATETIME,
FOREIGN KEY (vote_id) REFERENCES votes(vote_id),
FOREIGN KEY (donations_id) REFERENCES donations(donations_id),
FOREIGN KEY (user_id) REFERENCES users(user_id)
);
CREATE TABLE credit (
credit_id INT AUTO_INCREMENT PRIMARY KEY,
credit_ledger_id INT,
charge_id INT,
balance INT,
FOREIGN KEY (credit_ledger_id) REFERENCES credit_ledger(credit_ledger_id),
FOREIGN KEY (charge_id) REFERENCES payments(charge_id)
);
3) MySQL Workbench ERD

'학습 기록 > 코드잇 데이터분석 부트캠프' 카테고리의 다른 글
| 위클리 페이퍼 #8 (0) | 2026.01.19 |
|---|---|
| # 위클리페이퍼 6 (0) | 2026.01.05 |
| # 위클리페이퍼 5 (0) | 2025.12.22 |
| # 위클리페이퍼 4 (0) | 2025.12.14 |
| # 위클리 페이퍼 3 (0) | 2025.11.23 |