
※ 넷플릭스는 회원가입을 제외하고는 모두 회원용 API이기 때문에 모두 처리해줘야 함


회원 비밀번호 변경 API







프로필 생성 API



프로필 비밀번호 설정 API






회원 전체 프로필 조회 API



프로필 비밀번호 검증 API




프로필 설정 변경 API





내가 찜한 콘텐츠 조회 API



최다 검색 조회 API























모두의 인기 콘텐츠 조회 API




Top 10 시리즈 조회 API








Top 10 영화 조회 API







영화 상세 페이지 조회 API




시리즈 상세 페이지 조회 API

[몇 season인지 선택하지 않았을 때, 즉 상세 페이지 처음 들어왔을 때]





[몇 season인지 선택했을 때 - 시즌 2]





[몇 season인지 선택했을 때 - 시즌 3]




각각의 도메인의 service와 provider에 @Transactional 어노테이션 추가로 트랜잭션 자동 처리되게 함
콘텐츠 평가 및 취소 API에서 response로 evaluateIdx 주지 않게 수정

콘텐츠 평가 조회 API는 상세 페이지 조회 API가 있으므로 필요하지 않아 삭제
Top 10 시리즈 조회 API에서 /app/topSeries/:profileIdx로 카멜표기법으로 되어있던 것을 /app/topseries/:profileIdx로 변경 (카멜표기법 x)

Top 10 영화 조회 API에서 /app/topMovies/:profileIdx로 카멜표기법으로 되어있던 것을 /app/topmovies/:profileIdx로 변경 (카멜표기법 x)
소셜 로그인 테스트
1. 테스트 전 User 테이블 모습

2. 포스트맨 테스트 화면 : redirect url 나옴

3. 해당 url 주소로 접속 → 카카오 로그인 페이지 뜸


확인하고 계속하기 누르기 → 카카오 로그인 성공한 모습

DB에서 User 테이블에 사용자 데이터 생성 되었는지 확인 → 생성됨

현재 사용자의 kakaoId 외에는 아무런 정보도 없으며, 응답에서 isSignup이 1임을 알 수 있음 따라서, 별도의 회원가입 진행해야함.
회원가입 포스트맨 테스트


DB에서 User 테이블의 데이터 변경 확인 → 정상적으로 데이터가 저장 됐음을 확인

해당 사용자의 jwt 토큰으로 다른 회원용 API 잘 동작하는지 확인
[프로필 생성]




[모두의 인기 콘텐츠 조회]



-- MySQL Workbench Forward Engineering
SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0;
SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION';
-- -----------------------------------------------------
-- Schema mydb
-- -----------------------------------------------------
-- -----------------------------------------------------
-- Schema test
-- -----------------------------------------------------
DROP SCHEMA IF EXISTS `test` ;
-- -----------------------------------------------------
-- Schema test
-- -----------------------------------------------------
CREATE SCHEMA IF NOT EXISTS `test` DEFAULT CHARACTER SET utf8 ;
USE `test` ;
-- -----------------------------------------------------
-- Table `test`.`Actor`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `test`.`Actor` ;
CREATE TABLE IF NOT EXISTS `test`.`Actor` (
`actorIdx` BIGINT NOT NULL AUTO_INCREMENT,
`name` VARCHAR(45) NULL DEFAULT NULL,
PRIMARY KEY (`actorIdx`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb3;
-- -----------------------------------------------------
-- Table `test`.`Content`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `test`.`Content` ;
CREATE TABLE IF NOT EXISTS `test`.`Content` (
`contentIdx` BIGINT NOT NULL AUTO_INCREMENT,
`label` VARCHAR(45) NULL DEFAULT NULL,
`info` VARCHAR(100) NULL DEFAULT NULL,
`canDownload` INT NULL DEFAULT '0',
`age` INT NULL DEFAULT NULL,
`playtime` TIME NULL DEFAULT NULL,
`previewUrl` TEXT NULL DEFAULT NULL,
`title` VARCHAR(45) NOT NULL,
`releasedAt` VARCHAR(4) NULL DEFAULT NULL,
`quality` VARCHAR(10) NULL DEFAULT 'HD',
`videoUrl` TEXT NULL DEFAULT NULL,
`thumbnail` TEXT NULL DEFAULT NULL,
`createdAt` TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP,
`updatedAt` TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP,
`status` VARCHAR(10) NULL DEFAULT 'ACTIVE',
PRIMARY KEY (`contentIdx`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb3;
-- -----------------------------------------------------
-- Table `test`.`LanguagePack`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `test`.`LanguagePack` ;
CREATE TABLE IF NOT EXISTS `test`.`LanguagePack` (
`languagePackIdx` BIGINT NOT NULL AUTO_INCREMENT,
`nation` VARCHAR(45) NULL DEFAULT NULL,
PRIMARY KEY (`languagePackIdx`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb3;
-- -----------------------------------------------------
-- Table `test`.`PresentLang`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `test`.`PresentLang` ;
CREATE TABLE IF NOT EXISTS `test`.`PresentLang` (
`presentLangIdx` BIGINT NOT NULL AUTO_INCREMENT,
`languagePackIdx` BIGINT NOT NULL,
PRIMARY KEY (`presentLangIdx`),
INDEX `fk_PresentLang_LanguagePack1_idx` (`languagePackIdx` ASC) VISIBLE,
CONSTRAINT `fk_PresentLang_LanguagePack1`
FOREIGN KEY (`languagePackIdx`)
REFERENCES `test`.`LanguagePack` (`languagePackIdx`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb3;
-- -----------------------------------------------------
-- Table `test`.`Card`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `test`.`Card` ;
CREATE TABLE IF NOT EXISTS `test`.`Card` (
`cardIdx` BIGINT NOT NULL AUTO_INCREMENT,
`cardNumber` VARCHAR(45) NULL DEFAULT NULL,
`name` VARCHAR(45) NULL DEFAULT NULL,
`yymm` VARCHAR(4) NULL DEFAULT NULL,
`birthYear` VARCHAR(4) NULL DEFAULT NULL,
`birthMonth` VARCHAR(2) NULL DEFAULT NULL,
`birthDay` VARCHAR(2) NULL DEFAULT NULL,
`phone` VARCHAR(20) NULL DEFAULT NULL,
PRIMARY KEY (`cardIdx`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb3;
-- -----------------------------------------------------
-- Table `test`.`Membership`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `test`.`Membership` ;
CREATE TABLE IF NOT EXISTS `test`.`Membership` (
`membershipIdx` BIGINT NOT NULL AUTO_INCREMENT,
`status` VARCHAR(10) NULL DEFAULT NULL,
`type` VARCHAR(45) NULL DEFAULT NULL,
`cost` INT NULL DEFAULT NULL,
PRIMARY KEY (`membershipIdx`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb3;
-- -----------------------------------------------------
-- Table `test`.`User`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `test`.`User` ;
CREATE TABLE IF NOT EXISTS `test`.`User` (
`userIdx` BIGINT NOT NULL AUTO_INCREMENT,
`email` VARCHAR(45) NULL DEFAULT NULL,
`password` TEXT NULL DEFAULT NULL,
`status` VARCHAR(10) NULL DEFAULT 'ACTIVE',
`createdAt` TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP,
`updatedAt` TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP,
`membershipIdx` BIGINT NULL DEFAULT NULL,
`cardIdx` BIGINT NULL DEFAULT NULL,
`kakaoId` VARCHAR(45) NULL DEFAULT NULL,
PRIMARY KEY (`userIdx`),
INDEX `fk_user_Membership_idx` (`membershipIdx` ASC) VISIBLE,
INDEX `fk_User_Card1_idx` (`cardIdx` ASC) VISIBLE,
CONSTRAINT `fk_User_Card1`
FOREIGN KEY (`cardIdx`)
REFERENCES `test`.`Card` (`cardIdx`),
CONSTRAINT `fk_user_Membership`
FOREIGN KEY (`membershipIdx`)
REFERENCES `test`.`Membership` (`membershipIdx`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb3;
-- -----------------------------------------------------
-- Table `test`.`Profile`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `test`.`Profile` ;
CREATE TABLE IF NOT EXISTS `test`.`Profile` (
`profileIdx` BIGINT NOT NULL AUTO_INCREMENT,
`name` VARCHAR(45) NULL DEFAULT NULL,
`image` TEXT NULL DEFAULT NULL,
`password` VARCHAR(4) NULL DEFAULT NULL,
`status` VARCHAR(10) NULL DEFAULT 'ACTIVE',
`createdAt` TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP,
`updatedAt` TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP,
`isKids` INT NULL DEFAULT '0',
`isNext` INT NULL DEFAULT '0',
`isPreview` INT NULL DEFAULT '0',
`userIdx` BIGINT NOT NULL,
`presentLangIdx` BIGINT NOT NULL,
PRIMARY KEY (`profileIdx`),
INDEX `fk_profile_user1_idx` (`userIdx` ASC) VISIBLE,
INDEX `fk_Profile_PresentLang1_idx` (`presentLangIdx` ASC) VISIBLE,
CONSTRAINT `fk_Profile_PresentLang1`
FOREIGN KEY (`presentLangIdx`)
REFERENCES `test`.`PresentLang` (`presentLangIdx`),
CONSTRAINT `fk_profile_user1`
FOREIGN KEY (`userIdx`)
REFERENCES `test`.`User` (`userIdx`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb3;
-- -----------------------------------------------------
-- Table `test`.`Alarm`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `test`.`Alarm` ;
CREATE TABLE IF NOT EXISTS `test`.`Alarm` (
`alarmIdx` BIGINT NOT NULL AUTO_INCREMENT,
`type` VARCHAR(45) NULL DEFAULT NULL,
`profileIdx` BIGINT NOT NULL,
`contentIdx` BIGINT NOT NULL,
PRIMARY KEY (`alarmIdx`),
INDEX `fk_Alarm_profile1_idx` (`profileIdx` ASC) VISIBLE,
INDEX `fk_Alarm_content1_idx` (`contentIdx` ASC) VISIBLE,
CONSTRAINT `fk_Alarm_content1`
FOREIGN KEY (`contentIdx`)
REFERENCES `test`.`Content` (`contentIdx`),
CONSTRAINT `fk_Alarm_profile1`
FOREIGN KEY (`profileIdx`)
REFERENCES `test`.`Profile` (`profileIdx`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb3;
-- -----------------------------------------------------
-- Table `test`.`Category`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `test`.`Category` ;
CREATE TABLE IF NOT EXISTS `test`.`Category` (
`categoryIdx` BIGINT NOT NULL AUTO_INCREMENT,
`type` VARCHAR(45) NULL DEFAULT NULL,
PRIMARY KEY (`categoryIdx`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb3;
-- -----------------------------------------------------
-- Table `test`.`ContentActor`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `test`.`ContentActor` ;
CREATE TABLE IF NOT EXISTS `test`.`ContentActor` (
`contentActorIdx` BIGINT NOT NULL AUTO_INCREMENT,
`actorIdx` BIGINT NOT NULL,
`contentIdx` BIGINT NOT NULL,
PRIMARY KEY (`contentActorIdx`),
INDEX `fk_ContentActor_Actor1_idx` (`actorIdx` ASC) VISIBLE,
INDEX `fk_ContentActor_content1_idx` (`contentIdx` ASC) VISIBLE,
CONSTRAINT `fk_ContentActor_Actor1`
FOREIGN KEY (`actorIdx`)
REFERENCES `test`.`Actor` (`actorIdx`),
CONSTRAINT `fk_ContentActor_content1`
FOREIGN KEY (`contentIdx`)
REFERENCES `test`.`Content` (`contentIdx`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb3;
-- -----------------------------------------------------
-- Table `test`.`Genre`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `test`.`Genre` ;
CREATE TABLE IF NOT EXISTS `test`.`Genre` (
`genreIdx` BIGINT NOT NULL AUTO_INCREMENT,
`type` VARCHAR(45) NULL DEFAULT NULL,
PRIMARY KEY (`genreIdx`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb3;
-- -----------------------------------------------------
-- Table `test`.`ContentGenre`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `test`.`ContentGenre` ;
CREATE TABLE IF NOT EXISTS `test`.`ContentGenre` (
`contentGenreIdx` BIGINT NOT NULL AUTO_INCREMENT,
`contentIdx` BIGINT NOT NULL,
`genreIdx` BIGINT NOT NULL,
PRIMARY KEY (`contentGenreIdx`),
INDEX `fk_ContentGenre_Content1_idx` (`contentIdx` ASC) VISIBLE,
INDEX `fk_ContentGenre_Genre1_idx` (`genreIdx` ASC) VISIBLE,
CONSTRAINT `fk_ContentGenre_Content1`
FOREIGN KEY (`contentIdx`)
REFERENCES `test`.`Content` (`contentIdx`),
CONSTRAINT `fk_ContentGenre_Genre1`
FOREIGN KEY (`genreIdx`)
REFERENCES `test`.`Genre` (`genreIdx`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb3;
-- -----------------------------------------------------
-- Table `test`.`MainCategory`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `test`.`MainCategory` ;
CREATE TABLE IF NOT EXISTS `test`.`MainCategory` (
`idx` BIGINT NOT NULL AUTO_INCREMENT,
`categoryIdx` BIGINT NOT NULL,
PRIMARY KEY (`idx`),
INDEX `fk_MainCategory_Category1_idx` (`categoryIdx` ASC) VISIBLE,
CONSTRAINT `fk_MainCategory_Category1`
FOREIGN KEY (`categoryIdx`)
REFERENCES `test`.`Category` (`categoryIdx`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb3;
-- -----------------------------------------------------
-- Table `test`.`ContentMainCategory`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `test`.`ContentMainCategory` ;
CREATE TABLE IF NOT EXISTS `test`.`ContentMainCategory` (
`cMainCategoryIdx` BIGINT NOT NULL AUTO_INCREMENT,
`mainCategoryIdx` BIGINT NOT NULL,
`contentIdx` BIGINT NOT NULL,
PRIMARY KEY (`cMainCategoryIdx`),
INDEX `fk_ContentMainCategory_MainCategory1_idx` (`mainCategoryIdx` ASC) VISIBLE,
INDEX `fk_ContentMainCategory_Content1_idx` (`contentIdx` ASC) VISIBLE,
CONSTRAINT `fk_ContentMainCategory_Content1`
FOREIGN KEY (`contentIdx`)
REFERENCES `test`.`Content` (`contentIdx`),
CONSTRAINT `fk_ContentMainCategory_MainCategory1`
FOREIGN KEY (`mainCategoryIdx`)
REFERENCES `test`.`MainCategory` (`idx`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb3;
-- -----------------------------------------------------
-- Table `test`.`MovieCategory`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `test`.`MovieCategory` ;
CREATE TABLE IF NOT EXISTS `test`.`MovieCategory` (
`movieCategoryIdx` BIGINT NOT NULL AUTO_INCREMENT,
`categoryIdx` BIGINT NOT NULL,
PRIMARY KEY (`movieCategoryIdx`),
INDEX `fk_MovieCategory_Category1_idx` (`categoryIdx` ASC) VISIBLE,
CONSTRAINT `fk_MovieCategory_Category1`
FOREIGN KEY (`categoryIdx`)
REFERENCES `test`.`Category` (`categoryIdx`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb3;
-- -----------------------------------------------------
-- Table `test`.`ContentMovieCategory`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `test`.`ContentMovieCategory` ;
CREATE TABLE IF NOT EXISTS `test`.`ContentMovieCategory` (
`cMovieCategoryIdx` BIGINT NOT NULL AUTO_INCREMENT,
`movieCategoryIdx` BIGINT NOT NULL,
`contentIdx` BIGINT NOT NULL,
PRIMARY KEY (`cMovieCategoryIdx`),
INDEX `fk_ContentMovieCategory_MovieCategory1_idx` (`movieCategoryIdx` ASC) VISIBLE,
INDEX `fk_ContentMovieCategory_Content1_idx` (`contentIdx` ASC) VISIBLE,
CONSTRAINT `fk_ContentMovieCategory_Content1`
FOREIGN KEY (`contentIdx`)
REFERENCES `test`.`Content` (`contentIdx`),
CONSTRAINT `fk_ContentMovieCategory_MovieCategory1`
FOREIGN KEY (`movieCategoryIdx`)
REFERENCES `test`.`MovieCategory` (`movieCategoryIdx`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb3;
-- -----------------------------------------------------
-- Table `test`.`Producer`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `test`.`Producer` ;
CREATE TABLE IF NOT EXISTS `test`.`Producer` (
`producerIdx` BIGINT NOT NULL AUTO_INCREMENT,
`name` VARCHAR(45) NULL DEFAULT NULL,
PRIMARY KEY (`producerIdx`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb3;
-- -----------------------------------------------------
-- Table `test`.`ContentProducer`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `test`.`ContentProducer` ;
CREATE TABLE IF NOT EXISTS `test`.`ContentProducer` (
`contentProducerIdx` BIGINT NOT NULL AUTO_INCREMENT,
`producerIdx` BIGINT NOT NULL,
`contentIdx` BIGINT NOT NULL,
PRIMARY KEY (`contentProducerIdx`),
INDEX `fk_ContentProducer_Producer1_idx` (`producerIdx` ASC) VISIBLE,
INDEX `fk_ContentProducer_content1_idx` (`contentIdx` ASC) VISIBLE,
CONSTRAINT `fk_ContentProducer_content1`
FOREIGN KEY (`contentIdx`)
REFERENCES `test`.`Content` (`contentIdx`),
CONSTRAINT `fk_ContentProducer_Producer1`
FOREIGN KEY (`producerIdx`)
REFERENCES `test`.`Producer` (`producerIdx`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb3;
-- -----------------------------------------------------
-- Table `test`.`SeriesCategory`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `test`.`SeriesCategory` ;
CREATE TABLE IF NOT EXISTS `test`.`SeriesCategory` (
`seriesCategoryIdx` BIGINT NOT NULL AUTO_INCREMENT,
`categoryIdx` BIGINT NOT NULL,
PRIMARY KEY (`seriesCategoryIdx`),
INDEX `fk_SeriesCategory_Category1_idx` (`categoryIdx` ASC) VISIBLE,
CONSTRAINT `fk_SeriesCategory_Category1`
FOREIGN KEY (`categoryIdx`)
REFERENCES `test`.`Category` (`categoryIdx`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb3;
-- -----------------------------------------------------
-- Table `test`.`ContentSeriesCategory`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `test`.`ContentSeriesCategory` ;
CREATE TABLE IF NOT EXISTS `test`.`ContentSeriesCategory` (
`cSeriesCategoryIdx` BIGINT NOT NULL AUTO_INCREMENT,
`seriesCategoryIdx` BIGINT NOT NULL,
`contentIdx` BIGINT NOT NULL,
PRIMARY KEY (`cSeriesCategoryIdx`),
INDEX `fk_ContentSeriesCategory_SeriesCategory1_idx` (`seriesCategoryIdx` ASC) VISIBLE,
INDEX `fk_ContentSeriesCategory_Content1_idx` (`contentIdx` ASC) VISIBLE,
CONSTRAINT `fk_ContentSeriesCategory_Content1`
FOREIGN KEY (`contentIdx`)
REFERENCES `test`.`Content` (`contentIdx`),
CONSTRAINT `fk_ContentSeriesCategory_SeriesCategory1`
FOREIGN KEY (`seriesCategoryIdx`)
REFERENCES `test`.`SeriesCategory` (`seriesCategoryIdx`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb3;
-- -----------------------------------------------------
-- Table `test`.`VideoGrade`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `test`.`VideoGrade` ;
CREATE TABLE IF NOT EXISTS `test`.`VideoGrade` (
`videoGradeIdx` BIGINT NOT NULL AUTO_INCREMENT,
`category` VARCHAR(45) NULL DEFAULT NULL,
PRIMARY KEY (`videoGradeIdx`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb3;
-- -----------------------------------------------------
-- Table `test`.`ContentVideoGrade`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `test`.`ContentVideoGrade` ;
CREATE TABLE IF NOT EXISTS `test`.`ContentVideoGrade` (
`idx` BIGINT NOT NULL AUTO_INCREMENT,
`contentIdx` BIGINT NOT NULL,
`videoGradeIdx` BIGINT NOT NULL,
PRIMARY KEY (`idx`),
INDEX `fk_ContentVideoGrade_content1_idx` (`contentIdx` ASC) VISIBLE,
INDEX `fk_ContentVideoGrade_VideoGrade1_idx` (`videoGradeIdx` ASC) VISIBLE,
CONSTRAINT `fk_ContentVideoGrade_content1`
FOREIGN KEY (`contentIdx`)
REFERENCES `test`.`Content` (`contentIdx`),
CONSTRAINT `fk_ContentVideoGrade_VideoGrade1`
FOREIGN KEY (`videoGradeIdx`)
REFERENCES `test`.`VideoGrade` (`videoGradeIdx`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb3;
-- -----------------------------------------------------
-- Table `test`.`Writer`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `test`.`Writer` ;
CREATE TABLE IF NOT EXISTS `test`.`Writer` (
`writerIdx` BIGINT NOT NULL AUTO_INCREMENT,
`name` VARCHAR(45) NULL DEFAULT NULL,
PRIMARY KEY (`writerIdx`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb3;
-- -----------------------------------------------------
-- Table `test`.`ContentWriter`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `test`.`ContentWriter` ;
CREATE TABLE IF NOT EXISTS `test`.`ContentWriter` (
`contentWriterIdx` BIGINT NOT NULL AUTO_INCREMENT,
`writerIdx` BIGINT NOT NULL,
`contentIdx` BIGINT NOT NULL,
PRIMARY KEY (`contentWriterIdx`),
INDEX `fk_ContentWriter_Writer1_idx` (`writerIdx` ASC) VISIBLE,
INDEX `fk_ContentWriter_Content1_idx` (`contentIdx` ASC) VISIBLE,
CONSTRAINT `fk_ContentWriter_Content1`
FOREIGN KEY (`contentIdx`)
REFERENCES `test`.`Content` (`contentIdx`),
CONSTRAINT `fk_ContentWriter_Writer1`
FOREIGN KEY (`writerIdx`)
REFERENCES `test`.`Writer` (`writerIdx`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb3;
-- -----------------------------------------------------
-- Table `test`.`Credit`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `test`.`Credit` ;
CREATE TABLE IF NOT EXISTS `test`.`Credit` (
`creditIdx` BIGINT NOT NULL AUTO_INCREMENT,
`createdAt` TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP,
`updatedAt` TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP,
`cost` INT NULL DEFAULT NULL,
`unit` VARCHAR(10) NULL DEFAULT NULL,
`tax` INT NULL DEFAULT NULL,
`userIdx` BIGINT NOT NULL,
`cardIdx` BIGINT NOT NULL,
`info` VARCHAR(45) NULL DEFAULT NULL,
`period` VARCHAR(45) NULL DEFAULT NULL,
PRIMARY KEY (`creditIdx`),
INDEX `fk_Credit_user_idx` (`userIdx` ASC) VISIBLE,
INDEX `fk_Credit_Card1_idx` (`cardIdx` ASC) VISIBLE,
CONSTRAINT `fk_Credit_Card1`
FOREIGN KEY (`cardIdx`)
REFERENCES `test`.`Card` (`cardIdx`),
CONSTRAINT `fk_Credit_user`
FOREIGN KEY (`userIdx`)
REFERENCES `test`.`User` (`userIdx`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb3;
-- -----------------------------------------------------
-- Table `test`.`DetailContent`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `test`.`DetailContent` ;
CREATE TABLE IF NOT EXISTS `test`.`DetailContent` (
`dtContentIdx` BIGINT NOT NULL AUTO_INCREMENT,
`season` VARCHAR(45) NULL DEFAULT NULL,
`episode` INT NOT NULL,
`playtime` TIME NULL DEFAULT NULL,
`title` VARCHAR(45) NOT NULL,
`info` VARCHAR(100) NULL DEFAULT NULL,
`canDownload` INT NULL DEFAULT '0',
`status` VARCHAR(10) NULL DEFAULT 'ACTIVE',
`createdAt` TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP,
`updatedAt` TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP,
`quality` VARCHAR(10) NULL DEFAULT 'HD',
`videoUrl` TEXT NULL DEFAULT NULL,
`contentIdx` BIGINT NOT NULL,
PRIMARY KEY (`dtContentIdx`),
INDEX `fk_detailcontent_content1_idx` (`contentIdx` ASC) VISIBLE,
CONSTRAINT `fk_detailcontent_content1`
FOREIGN KEY (`contentIdx`)
REFERENCES `test`.`Content` (`contentIdx`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb3;
-- -----------------------------------------------------
-- Table `test`.`SettingLang`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `test`.`SettingLang` ;
CREATE TABLE IF NOT EXISTS `test`.`SettingLang` (
`settingLangIdx` BIGINT NOT NULL AUTO_INCREMENT,
`languagePackIdx` BIGINT NOT NULL,
`profileIdx` BIGINT NOT NULL,
PRIMARY KEY (`settingLangIdx`),
INDEX `fk_SettingLang_LanguagePack1_idx` (`languagePackIdx` ASC) VISIBLE,
INDEX `fk_SettingLang_profile1_idx` (`profileIdx` ASC) VISIBLE,
CONSTRAINT `fk_SettingLang_LanguagePack1`
FOREIGN KEY (`languagePackIdx`)
REFERENCES `test`.`LanguagePack` (`languagePackIdx`),
CONSTRAINT `fk_SettingLang_profile1`
FOREIGN KEY (`profileIdx`)
REFERENCES `test`.`Profile` (`profileIdx`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb3;
-- -----------------------------------------------------
-- Table `test`.`Dubbing`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `test`.`Dubbing` ;
CREATE TABLE IF NOT EXISTS `test`.`Dubbing` (
`dubbingIdx` BIGINT NOT NULL AUTO_INCREMENT,
`settingLangIdx` BIGINT NOT NULL,
`contentIdx` BIGINT NOT NULL,
PRIMARY KEY (`dubbingIdx`),
INDEX `fk_Dubbing_SettingLang1_idx` (`settingLangIdx` ASC) VISIBLE,
INDEX `fk_Dubbing_content1_idx` (`contentIdx` ASC) VISIBLE,
CONSTRAINT `fk_Dubbing_content1`
FOREIGN KEY (`contentIdx`)
REFERENCES `test`.`Content` (`contentIdx`),
CONSTRAINT `fk_Dubbing_SettingLang1`
FOREIGN KEY (`settingLangIdx`)
REFERENCES `test`.`SettingLang` (`settingLangIdx`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb3;
-- -----------------------------------------------------
-- Table `test`.`Evaluate`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `test`.`Evaluate` ;
CREATE TABLE IF NOT EXISTS `test`.`Evaluate` (
`evaluateIdx` BIGINT NOT NULL AUTO_INCREMENT,
`likes` INT NULL DEFAULT NULL,
`profileIdx` BIGINT NOT NULL,
`contentIdx` BIGINT NOT NULL,
PRIMARY KEY (`evaluateIdx`),
INDEX `fk_Evaluate_profile1_idx` (`profileIdx` ASC) VISIBLE,
INDEX `fk_Evaluate_content1_idx` (`contentIdx` ASC) VISIBLE,
CONSTRAINT `fk_Evaluate_content1`
FOREIGN KEY (`contentIdx`)
REFERENCES `test`.`Content` (`contentIdx`),
CONSTRAINT `fk_Evaluate_profile1`
FOREIGN KEY (`profileIdx`)
REFERENCES `test`.`Profile` (`profileIdx`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb3;
-- -----------------------------------------------------
-- Table `test`.`Feature`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `test`.`Feature` ;
CREATE TABLE IF NOT EXISTS `test`.`Feature` (
`featureIdx` BIGINT NOT NULL AUTO_INCREMENT,
`type` VARCHAR(45) NULL DEFAULT NULL,
PRIMARY KEY (`featureIdx`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb3;
-- -----------------------------------------------------
-- Table `test`.`History`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `test`.`History` ;
CREATE TABLE IF NOT EXISTS `test`.`History` (
`historyIdx` BIGINT NOT NULL AUTO_INCREMENT,
`watchTime` TIME NULL DEFAULT NULL,
`status` VARCHAR(10) NULL DEFAULT 'ACTIVE',
`profileIdx` BIGINT NOT NULL,
`contentIdx` BIGINT NOT NULL,
PRIMARY KEY (`historyIdx`),
INDEX `fk_history_profile1_idx` (`profileIdx` ASC) VISIBLE,
INDEX `fk_history_content1_idx` (`contentIdx` ASC) VISIBLE,
CONSTRAINT `fk_history_content1`
FOREIGN KEY (`contentIdx`)
REFERENCES `test`.`Content` (`contentIdx`),
CONSTRAINT `fk_history_profile1`
FOREIGN KEY (`profileIdx`)
REFERENCES `test`.`Profile` (`profileIdx`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb3;
-- -----------------------------------------------------
-- Table `test`.`Hot`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `test`.`Hot` ;
CREATE TABLE IF NOT EXISTS `test`.`Hot` (
`hotIdx` BIGINT NOT NULL AUTO_INCREMENT,
`contentIdx` BIGINT NOT NULL,
PRIMARY KEY (`hotIdx`),
INDEX `fk_Hot_content1_idx` (`contentIdx` ASC) VISIBLE,
CONSTRAINT `fk_Hot_content1`
FOREIGN KEY (`contentIdx`)
REFERENCES `test`.`Content` (`contentIdx`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb3;
-- -----------------------------------------------------
-- Table `test`.`LikeContent`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `test`.`LikeContent` ;
CREATE TABLE IF NOT EXISTS `test`.`LikeContent` (
`likeContentIdx` BIGINT NOT NULL AUTO_INCREMENT,
`contentIdx` BIGINT NOT NULL,
`profileIdx` BIGINT NOT NULL,
PRIMARY KEY (`likeContentIdx`),
INDEX `fk_LikeContent_content1_idx` (`contentIdx` ASC) VISIBLE,
INDEX `fk_LikeContent_profile1_idx` (`profileIdx` ASC) VISIBLE,
CONSTRAINT `fk_LikeContent_content1`
FOREIGN KEY (`contentIdx`)
REFERENCES `test`.`Content` (`contentIdx`),
CONSTRAINT `fk_LikeContent_profile1`
FOREIGN KEY (`profileIdx`)
REFERENCES `test`.`Profile` (`profileIdx`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb3;
-- -----------------------------------------------------
-- Table `test`.`MostSearch`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `test`.`MostSearch` ;
CREATE TABLE IF NOT EXISTS `test`.`MostSearch` (
`mostSearchIdx` BIGINT NOT NULL AUTO_INCREMENT,
`contentIdx` BIGINT NOT NULL,
PRIMARY KEY (`mostSearchIdx`),
INDEX `fk_MostSearch_content1_idx` (`contentIdx` ASC) VISIBLE,
CONSTRAINT `fk_MostSearch_content1`
FOREIGN KEY (`contentIdx`)
REFERENCES `test`.`Content` (`contentIdx`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb3;
-- -----------------------------------------------------
-- Table `test`.`MovieFeature`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `test`.`MovieFeature` ;
CREATE TABLE IF NOT EXISTS `test`.`MovieFeature` (
`movieFeatureIdx` BIGINT NOT NULL AUTO_INCREMENT,
`contentIdx` BIGINT NOT NULL,
`featureIdx` BIGINT NOT NULL,
PRIMARY KEY (`movieFeatureIdx`),
INDEX `fk_MovieFeature_Content1_idx` (`contentIdx` ASC) VISIBLE,
INDEX `fk_MovieFeature_Feature1_idx` (`featureIdx` ASC) VISIBLE,
CONSTRAINT `fk_MovieFeature_Content1`
FOREIGN KEY (`contentIdx`)
REFERENCES `test`.`Content` (`contentIdx`),
CONSTRAINT `fk_MovieFeature_Feature1`
FOREIGN KEY (`featureIdx`)
REFERENCES `test`.`Feature` (`featureIdx`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb3;
-- -----------------------------------------------------
-- Table `test`.`NewHotFeature`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `test`.`NewHotFeature` ;
CREATE TABLE IF NOT EXISTS `test`.`NewHotFeature` (
`nhFeatureIdx` BIGINT NOT NULL AUTO_INCREMENT,
`featureIdx` BIGINT NOT NULL,
`contentIdx` BIGINT NOT NULL,
PRIMARY KEY (`nhFeatureIdx`),
INDEX `fk_NewHotFeature_Feature1_idx` (`featureIdx` ASC) VISIBLE,
INDEX `fk_NewHotFeature_Content1_idx` (`contentIdx` ASC) VISIBLE,
CONSTRAINT `fk_NewHotFeature_Content1`
FOREIGN KEY (`contentIdx`)
REFERENCES `test`.`Content` (`contentIdx`),
CONSTRAINT `fk_NewHotFeature_Feature1`
FOREIGN KEY (`featureIdx`)
REFERENCES `test`.`Feature` (`featureIdx`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb3;
-- -----------------------------------------------------
-- Table `test`.`News`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `test`.`News` ;
CREATE TABLE IF NOT EXISTS `test`.`News` (
`newIdx` BIGINT NOT NULL AUTO_INCREMENT,
`openDate` VARCHAR(45) NULL DEFAULT NULL,
`contentIdx` BIGINT NOT NULL,
PRIMARY KEY (`newIdx`),
INDEX `fk_New_content1_idx` (`contentIdx` ASC) VISIBLE,
CONSTRAINT `fk_New_content1`
FOREIGN KEY (`contentIdx`)
REFERENCES `test`.`Content` (`contentIdx`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb3;
-- -----------------------------------------------------
-- Table `test`.`Recommend`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `test`.`Recommend` ;
CREATE TABLE IF NOT EXISTS `test`.`Recommend` (
`recommendIdx` BIGINT NOT NULL AUTO_INCREMENT,
`type` VARCHAR(45) NULL DEFAULT NULL,
`contentIdx` BIGINT NOT NULL,
PRIMARY KEY (`recommendIdx`),
INDEX `fk_recommend_content1_idx` (`contentIdx` ASC) VISIBLE,
CONSTRAINT `fk_recommend_content1`
FOREIGN KEY (`contentIdx`)
REFERENCES `test`.`Content` (`contentIdx`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb3;
-- -----------------------------------------------------
-- Table `test`.`SaveContent`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `test`.`SaveContent` ;
CREATE TABLE IF NOT EXISTS `test`.`SaveContent` (
`saveContentIdx` BIGINT NOT NULL AUTO_INCREMENT,
`profileIdx` BIGINT NOT NULL,
`contentIdx` BIGINT NOT NULL,
`status` VARCHAR(10) NULL DEFAULT 'ACTIVE',
PRIMARY KEY (`saveContentIdx`),
INDEX `fk_SaveContent_profile1_idx` (`profileIdx` ASC) VISIBLE,
INDEX `fk_SaveContent_content1_idx` (`contentIdx` ASC) VISIBLE,
CONSTRAINT `fk_SaveContent_content1`
FOREIGN KEY (`contentIdx`)
REFERENCES `test`.`Content` (`contentIdx`),
CONSTRAINT `fk_SaveContent_profile1`
FOREIGN KEY (`profileIdx`)
REFERENCES `test`.`Profile` (`profileIdx`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb3;
-- -----------------------------------------------------
-- Table `test`.`SeriesFeature`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `test`.`SeriesFeature` ;
CREATE TABLE IF NOT EXISTS `test`.`SeriesFeature` (
`seriesFeatureIdx` BIGINT NOT NULL AUTO_INCREMENT,
`contentIdx` BIGINT NOT NULL,
`featureIdx` BIGINT NOT NULL,
PRIMARY KEY (`seriesFeatureIdx`),
INDEX `fk_SeriesFeature_Content1_idx` (`contentIdx` ASC) VISIBLE,
INDEX `fk_SeriesFeature_Feature1_idx` (`featureIdx` ASC) VISIBLE,
CONSTRAINT `fk_SeriesFeature_Content1`
FOREIGN KEY (`contentIdx`)
REFERENCES `test`.`Content` (`contentIdx`),
CONSTRAINT `fk_SeriesFeature_Feature1`
FOREIGN KEY (`featureIdx`)
REFERENCES `test`.`Feature` (`featureIdx`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb3;
-- -----------------------------------------------------
-- Table `test`.`Subtitle`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `test`.`Subtitle` ;
CREATE TABLE IF NOT EXISTS `test`.`Subtitle` (
`subtitleIdx` BIGINT NOT NULL AUTO_INCREMENT,
`settingLangIdx` BIGINT NOT NULL,
`contentIdx` BIGINT NOT NULL,
PRIMARY KEY (`subtitleIdx`),
INDEX `fk_Subtitle_SettingLang1_idx` (`settingLangIdx` ASC) VISIBLE,
INDEX `fk_Subtitle_content1_idx` (`contentIdx` ASC) VISIBLE,
CONSTRAINT `fk_Subtitle_content1`
FOREIGN KEY (`contentIdx`)
REFERENCES `test`.`Content` (`contentIdx`),
CONSTRAINT `fk_Subtitle_SettingLang1`
FOREIGN KEY (`settingLangIdx`)
REFERENCES `test`.`SettingLang` (`settingLangIdx`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb3;
-- -----------------------------------------------------
-- Table `test`.`Top10Movie`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `test`.`Top10Movie` ;
CREATE TABLE IF NOT EXISTS `test`.`Top10Movie` (
`top10MovieIdx` BIGINT NOT NULL AUTO_INCREMENT,
`ranking` INT NULL DEFAULT NULL,
`contentIdx` BIGINT NOT NULL,
PRIMARY KEY (`top10MovieIdx`),
INDEX `fk_Top10Movie_Content1_idx` (`contentIdx` ASC) VISIBLE,
CONSTRAINT `fk_Top10Movie_Content1`
FOREIGN KEY (`contentIdx`)
REFERENCES `test`.`Content` (`contentIdx`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb3;
-- -----------------------------------------------------
-- Table `test`.`Top10Series`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `test`.`Top10Series` ;
CREATE TABLE IF NOT EXISTS `test`.`Top10Series` (
`top10SeriesIdx` BIGINT NOT NULL AUTO_INCREMENT,
`contentIdx` BIGINT NOT NULL,
`ranking` INT NULL DEFAULT NULL,
PRIMARY KEY (`top10SeriesIdx`),
INDEX `fk_Top10_content1_idx` (`contentIdx` ASC) VISIBLE,
CONSTRAINT `fk_Top10_content1`
FOREIGN KEY (`contentIdx`)
REFERENCES `test`.`Content` (`contentIdx`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb3;
SET SQL_MODE=@OLD_SQL_MODE;
SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;
https://docs.google.com/spreadsheets/d/1WjskdpspvkHjqqgWzxLSvAau8WobkimmFZqJTDu7kxs/edit#gid=0
데이터 한정 - Path variable ex) 게시글 1개로 고정, userIdx 1번유저가 좋아요한게시글
querystring : 필터(데이터를 다 부르고 여기서 걸러주는역할), paging, 넷플릭스 시즌선택은 쿼리스트링(화면은 똑같고 데이터만 시즌별로 다른것이기때문에)