DataBase - MTVS-third-study/adregamdi GitHub Wiki

image

-- ๊ณ„์ • ์ƒ์„ฑ ํ›„ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ํ™œ์šฉ

-- 1) ์ƒˆ๋กœ์šด mtvs ๊ณ„์ • ๋งŒ๋“ค๊ธฐ
CREATE USER 'adregamdi'@'%' IDENTIFIED BY  'adregamdi'; -- 'localhost' ๋Œ€์‹  '%'๋ฅผ ์“ฐ๋ฉด ์™ธ๋ถ€ ip๋กœ ์ ‘์† ๊ฐ€๋Šฅํ•˜๋‹ค.

-- ํ˜„์žฌ ์กด์žฌํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ํ™•์ธ
SHOW databases;

-- mysql ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋กœ ๊ณ„์ • ์ •๋ณด ํ™•์ธํ•˜๊ธฐ
USE mysql;    -- ๊ธฐ๋ณธ ์ ์œผ๋กœ ์ œ๊ณต๋˜๋Š” mysql database

SELECT * FROM user;    -- mysql database์—์„œ user๋ฅผ ํ™•์ธํ•ด ๊ณ„์ •์ด ์ถ”๊ฐ€๋œ ๊ฒƒ์„ ํ™•์ธํ•œ๋‹ค.

-- 2) ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ƒ์„ฑ ํ›„ ๊ณ„์ •์— ๊ถŒํ•œ ๋ถ€์—ฌ
-- ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค(์Šคํ‚ค๋งˆ) ์ƒ์„ฑ
CREATE DATABASE adregamdi;
-- CREATE SCHEMA menudb;

-- ์™ผ์ชฝ Navigator๋ฅผ ์ƒˆ๋กœ๊ณ ์นจํ•ด์„œ menudb database(schema)๊ฐ€ ์ถ”๊ฐ€๋œ ๊ฒƒ์„ ํ™•์ธํ•œ๋‹ค.
-- MySQL์€ ๊ฐœ๋…์ ์œผ๋กœ database์™€ schema๋ฅผ ๊ตฌ๋ถ„ํ•˜์ง€ ์•Š๋Š”๋‹ค.
-- (CREATE DATABASE์™€ CREATE SCHEMA๊ฐ€ ๊ฐ™์€ ๊ฐœ๋…์ด๋‹ค.)

GRANT ALL PRIVILEGES ON adregamdi.* TO 'adregamdi'@'%';    -- menu์— ๋Œ€ํ•œ ๋ชจ๋“  ๊ถŒํ•œ ๋ถ€์—ฌ

SHOW GRANTS FOR 'adregamdi'@'%';

-- 3) ์ƒˆ๋กœ์šด ์ ‘์†๊ธฐ ์ƒ์„ฑ ํ›„ ์ ‘์†ํ•˜๊ณ  ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ํ™œ์šฉํ•˜๊ธฐ
-- ์ขŒ์ธก ์ƒ๋‹จ์˜ home ๋ฒ„ํŠผ์„ ๋ˆŒ๋Ÿฌ mtvs ๊ณ„์ • ์ ‘์†๊ธฐ๋ฅผ ๋งŒ๋“ค์–ด ์ ‘์†ํ•˜๊ณ  database(schema)๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.
-- ์ ‘์†๊ธฐ์˜ Connection Name์€ 'MTVS'๋กœ ์ง€์ •
-- Parameters์˜ Username์€ 'mtvs'๋กœ ์ง€์ •(๊ณ„์ •๋ช…)
-- Default Schema(๊ธฐ๋ณธ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค(์Šคํ‚ค๋งˆ) ์„ค์ •)๋Š” 'menudb'๋กœ ์ง€์ •
USE adregamdi;


------------------------------------------------------------------------------------



-- ํ…Œ์ด๋ธ” ์‚ญ์ œ
DROP TABLE IF EXISTS USER_TBL CASCADE;
DROP TABLE IF EXISTS PLACE_TBL CASCADE;
DROP TABLE IF EXISTS SCHEDULE_TBL CASCADE;
DROP TABLE IF EXISTS REVIEW_TBL CASCADE;
DROP TABLE IF EXISTS BLACKLIST_TBL CASCADE;
DROP TABLE IF EXISTS REPORT_TBL CASCADE;

-- user ํ…Œ์ด๋ธ” ์ƒ์„ฑ
CREATE TABLE IF NOT EXISTS USER_TBL
(
    user_no INT AUTO_INCREMENT COMMENT '์œ ์ €๋ฒˆํ˜ธ',
    id VARCHAR(50) COMMENT '์นด์นด์˜ค์œ ์ €์•„์ด๋””',
    kakao_nickname VARCHAR(50) COMMENT '์นด์นด์˜ค๋‹‰๋„ค์ž„',
    service_nickname VARCHAR(50) COMMENT '์„œ๋น„์Šค๋‹‰๋„ค์ž„',
    email VARCHAR(50) COMMENT '์ด๋ฉ”์ผ',
    age VARCHAR(50) COMMENT '์—ฐ๋ น๋Œ€',
    gender VARCHAR(50) COMMENT '์„ฑ๋ณ„',
    report_count INT COMMENT 'ํ”ผ์‹ ๊ณ ํšŸ์ˆ˜',
    review_count INT COMMENT '๋ฆฌ๋ทฐ์ž‘์„ฑ๊ฐœ์ˆ˜',
    grade INT COMMENT '์œ ์ €๋“ฑ๊ธ‰',
    blacklist_status BOOLEAN COMMENT '๋ธ”๋ž™๋ฆฌ์ŠคํŠธ์ƒํƒœ',
    CONSTRAINT pk_user_no PRIMARY KEY (user_no)
) ENGINE=INNODB COMMENT '์œ ์ €';

-- ํ…Œ์ด๋ธ” ์ƒ์„ฑ
-- category ํ…Œ์ด๋ธ” ์ƒ์„ฑ
CREATE TABLE IF NOT EXISTS SCHEDULE_TBL
(
    schedule_no    INT AUTO_INCREMENT COMMENT '์ผ์ •๊ด€๋ฆฌ๋ฒˆํ˜ธ',
		user_no INT NOT NULL COMMENT 'ํšŒ์›๋ฒˆํ˜ธ',
    schedule_name INT COMMENT '์ผ์ •์ด๋ฆ„',
    CONSTRAINT pk_schedule_no PRIMARY KEY (schedule_no),
    CONSTRAINT fk_user_no FOREIGN KEY (user_no) REFERENCES USER_TBL (user_no)
) ENGINE=INNODB COMMENT '์ผ์ •';

-- ์‹ ๊ณ  ํ…Œ์ด๋ธ” ์ƒ์„ฑ
CREATE TABLE IF NOT EXISTS REPORT_TBL
(
    report_no INT AUTO_INCREMENT COMMENT '์‹ ๊ณ ๋ฒˆํ˜ธ',
    reporter_no INT COMMENT '์‹ ๊ณ ์ž๋ฒˆํ˜ธ',
    respondent_no INT COMMENT 'ํ”ผ์‹ ๊ณ ์ž๋ฒˆํ˜ธ',
    report_category_code int COMMENT '์‹ ๊ณ ์นดํ…Œ๊ณ ๋ฆฌ์ฝ”๋“œ',
    report_contents VARCHAR(500) COMMENT '์‹ ๊ณ ๋‚ด์šฉ',
    reported_date DATE COMMENT '์‹ ๊ณ ๋‚ ์งœ',
    CONSTRAINT pk_report_no PRIMARY KEY (report_no),
    CONSTRAINT fk_reporter_no FOREIGN KEY (reporter_no) REFERENCES USER_TBL (user_no),
    CONSTRAINT fk_respondent_no FOREIGN KEY (respondent_no) REFERENCES USER_TBL (user_no)
) ENGINE=INNODB COMMENT '์‹ ๊ณ ';
  
-- ๋ฆฌ๋ทฐ ํ…Œ์ด๋ธ” ์ƒ์„ฑ
CREATE TABLE IF NOT EXISTS REVIEW_TBL
(
		review_no INT AUTO_INCREMENT COMMENT '๋ฆฌ๋ทฐ๋ฒˆํ˜ธ',
		like_num INT COMMENT '์ข‹์•„์š”๊ฐฏ์ˆ˜',
    star_point INT COMMENT '๋ณ„์ ',
    review_image VARCHAR(300) COMMENT '๋ฆฌ๋ทฐ์ด๋ฏธ์ง€',
		review_contents VARCHAR(600) COMMENT '๋ฆฌ๋ทฐ ๋‚ด์šฉ',
    report_status BOOLEAN default 'T' COMMENT '์‹ ๊ณ  ์—ฌ๋ถ€',
		user_no INT COMMENT '์œ ์ € ๋ฒˆํ˜ธ',
    place_no INT COMMENT '์žฅ์†Œ ๋ฒˆํ˜ธ',
		reg_date DATE COMMENT '๋“ฑ๋ก ์ผ์‹œ',
		CONSTRAINT fk_user_no FOREIGN KEY (user_no) REFERENCES USER_TBL (user_no),
		CONSTRAINT fk_place_no FOREIGN KEY (place_no) REFERENCES PLACE_TBL (place_no)
)