update
테이블의 IP를 INT⇒VARCHAR(45)로 변경
-- 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 boocam_wiki
-- -----------------------------------------------------
-- -----------------------------------------------------
-- Schema boocam_wiki
-- -----------------------------------------------------
CREATE SCHEMA IF NOT EXISTS `boocam_wiki` DEFAULT CHARACTER SET utf8 ;
USE `boocam_wiki` ;
-- -----------------------------------------------------
-- Table `boocam_wiki`.`user`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `boocam_wiki`.`user` (
`user_id` VARCHAR(45) CHARACTER SET 'utf8' NOT NULL,
`login` VARCHAR(45) CHARACTER SET 'utf8' NOT NULL,
`avatar_url` VARCHAR(200) NOT NULL,
`updated_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`created_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
`is_admin` TINYINT NOT NULL DEFAULT 0,
PRIMARY KEY (`user_id`))
ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `boocam_wiki`.`document`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `boocam_wiki`.`document` (
`generation` INT NOT NULL,
`boostcamp_id` VARCHAR(45) CHARACTER SET 'utf8' NOT NULL,
`name` VARCHAR(45) CHARACTER SET 'utf8' NOT NULL,
`created_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
`updated_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`content` MEDIUMTEXT CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_general_ci' NULL,
`nickname` VARCHAR(45) NULL,
`location` VARCHAR(45) NULL,
`language` VARCHAR(45) NULL,
`user_image` VARCHAR(400) CHARACTER SET 'utf8' COLLATE 'utf8_general_ci' NULL,
`mbti` VARCHAR(45) NULL,
`field` VARCHAR(45) NULL,
`link` VARCHAR(200) NULL,
PRIMARY KEY (`generation`, `boostcamp_id`, `name`),
FULLTEXT INDEX `content_fulltext` (`content`) WITH PARSER ngram,
INDEX `idx_generation` (`generation` ASC),
INDEX `idx_boostcamp_id` (`boostcamp_id` ASC),
INDEX `idx_name` (`name` ASC))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb4;
-- -----------------------------------------------------
-- Table `boocam_wiki`.`update`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `boocam_wiki`.`update` (
`update_id` INT NOT NULL AUTO_INCREMENT,
`generation` INT NOT NULL,
`boostcamp_id` VARCHAR(45) CHARACTER SET 'utf8' NOT NULL,
`name` VARCHAR(45) CHARACTER SET 'utf8' NOT NULL,
`user_id` VARCHAR(45) CHARACTER SET 'utf8' NOT NULL,
`created_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
`content` MEDIUMTEXT CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_general_ci' NULL,
`nickname` VARCHAR(45) NULL,
`language` VARCHAR(45) NULL,
`location` VARCHAR(45) NULL,
`field` VARCHAR(45) NULL,
`mbti` VARCHAR(45) NULL,
`link` VARCHAR(200) NULL,
`user_image` VARCHAR(400) CHARACTER SET 'utf8' COLLATE 'utf8_general_ci' NULL,
`ip` VARCHAR(45) NULL,
INDEX `fk_user_has_document_document1_idx` (`generation` ASC, `boostcamp_id` ASC, `name` ASC),
INDEX `fk_user_has_document_user1_idx` (`user_id` ASC),
PRIMARY KEY (`update_id`),
CONSTRAINT `fk_user_has_document_user1`
FOREIGN KEY (`user_id`)
REFERENCES `boocam_wiki`.`user` (`user_id`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_user_has_document_document1`
FOREIGN KEY (`generation` , `boostcamp_id` , `name`)
REFERENCES `boocam_wiki`.`document` (`generation` , `boostcamp_id` , `name`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb4;
-- -----------------------------------------------------
-- Table `boocam_wiki`.`view`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `boocam_wiki`.`view` (
`view_id` INT NOT NULL AUTO_INCREMENT,
`generation` INT NOT NULL,
`boostcamp_id` VARCHAR(45) CHARACTER SET 'utf8' NOT NULL,
`name` VARCHAR(45) CHARACTER SET 'utf8' NOT NULL,
`created_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
`count` INT NOT NULL DEFAULT 0,
PRIMARY KEY (`view_id`),
INDEX `idx_generation_boostcamp_id_name` (`generation` ASC, `boostcamp_id` ASC, `name` ASC),
CONSTRAINT `fk_generation_boostcamp_id_name`
FOREIGN KEY (`generation` , `boostcamp_id` , `name`)
REFERENCES `boocam_wiki`.`document` (`generation` , `boostcamp_id` , `name`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `boocam_wiki`.`classification`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `boocam_wiki`.`classification` (
`classification_id` VARCHAR(45) CHARACTER SET 'utf8' NOT NULL,
PRIMARY KEY (`classification_id`))
ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `boocam_wiki`.`classification_graph`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `boocam_wiki`.`classification_graph` (
`parent_id` VARCHAR(45) CHARACTER SET 'utf8' NOT NULL,
`child_id` VARCHAR(45) CHARACTER SET 'utf8' NOT NULL,
PRIMARY KEY (`parent_id`, `child_id`),
INDEX `idx_child_classification_id` (`child_id` ASC),
INDEX `idx_parent_classification_id` (`parent_id` ASC),
CONSTRAINT `fk_parent_classification_id`
FOREIGN KEY (`parent_id`)
REFERENCES `boocam_wiki`.`classification` (`classification_id`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_child_classification_id`
FOREIGN KEY (`child_id`)
REFERENCES `boocam_wiki`.`classification` (`classification_id`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `boocam_wiki`.`document_classification`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `boocam_wiki`.`document_classification` (
`classification_id` VARCHAR(45) CHARACTER SET 'utf8' NOT NULL,
`generation` INT NOT NULL,
`boostcamp_id` VARCHAR(45) CHARACTER SET 'utf8' NOT NULL,
`name` VARCHAR(45) CHARACTER SET 'utf8' NOT NULL,
PRIMARY KEY (`classification_id`, `generation`, `boostcamp_id`, `name`),
INDEX `idx_classfication_id` (`classification_id` ASC),
INDEX `idx_generation_boostcamp_id_name` (`generation` ASC, `boostcamp_id` ASC, `name` ASC),
CONSTRAINT `fk_classification`
FOREIGN KEY (`classification_id`)
REFERENCES `boocam_wiki`.`classification` (`classification_id`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_generation_id_name`
FOREIGN KEY (`generation` , `boostcamp_id` , `name`)
REFERENCES `boocam_wiki`.`document` (`generation` , `boostcamp_id` , `name`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb4;
SET SQL_MODE=@OLD_SQL_MODE;
SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;