2020 1학기 DB 프로젝트 진행

#20200608. 테이블 만들기 (2)

Aria (Applied) 2020. 6. 8. 09:56

최종 CREATE SQL문

 

USE `boj_solved_ac`;

 

CREATE TABLE `problem` (

       `id` INT NOT NULL,

       `title` VARCHAR(100) NULL,

       `correct_count` INT NOT NULL DEFAULT 0,

       `submit_count` INT NOT NULL DEFAULT 0,

       `correct_rate` DOUBLE NOT NULL DEFAULT 0,

       PRIMARY KEY (`id`)

)

COLLATE='utf8mb4_unicode_ci';

 

CREATE TABLE `solved_ac_problem` (

       `id` INT NOT NULL,

       `tier` INT NOT NULL

)

COLLATE='utf8mb4_unicode_ci';

 

ALTER TABLE `solved_ac_problem`

       CHANGE COLUMN `tier` `tier` INT(11) NOT NULL DEFAULT 0 AFTER `id`;

 

CREATE TABLE `exp_table` (

       `tier` INT NOT NULL,

       `exp` BIGINT NOT NULL DEFAULT 256,

       `tier_name` VARCHAR(30) NOT NULL DEFAULT 'Unrated'

)

COLLATE='utf8mb4_unicode_ci';

 

CREATE TABLE `tier_table` (

       `tier` INT NOT NULL,

       `min_exp` BIGINT NOT NULL DEFAULT 0,

       `max_exp` BIGINT NOT NULL DEFAULT 10,

       `tier_name` VARCHAR(30) NOT NULL DEFAULT 'Unrated'

)

COLLATE='utf8mb4_unicode_ci';

 

CREATE TABLE `boj_user` (

       `user_id` VARCHAR(30) NOT NULL DEFAULT '',

       `rank` INT NOT NULL,

       `solved_count` INT NULL,

       `submit_count` INT NULL,

       `accepted` INT NULL,

       `wrong_answer` INT NULL,

       `presentation_error` INT NULL,

       `time_limit_exceeded` INT NULL,

       `memory_limit_exceeded` INT NULL,

       `output_limit_exceeded` INT NULL,

       `runtime_error` INT NULL,

       `complication_error` INT NULL,

       `organization` VARCHAR(100) NULL DEFAULT NULL,

       `topcoder_id` VARCHAR(30) NULL DEFAULT NULL,

       `codeforce_id` VARCHAR(30) NULL DEFAULT NULL,

       `atcoder_id` VARCHAR(30) NULL DEFAULT NULL,

       `solved_ac_id` VARCHAR(30) NULL DEFAULT NULL,

       PRIMARY KEY (`user_id`)

)

COLLATE='utf8mb4_unicode_ci';

 

ALTER TABLE `exp_table`

       ADD PRIMARY KEY (`tier`);

 

ALTER TABLE `solved_ac_problem`

       ADD PRIMARY KEY (`id`);

 

ALTER TABLE `tier_table`

       ADD PRIMARY KEY (`tier`);

 

CREATE TABLE `solved_ac_user` (

       `user_id` VARCHAR(30) NOT NULL DEFAULT '0',

       `bio` VARCHAR(255) NULL DEFAULT NULL,

       `tier` INT NOT NULL DEFAULT 0,

       `current_exp` BIGINT NOT NULL DEFAULT 0,

       `max_exp` BIGINT NOT NULL DEFAULT 10,

       `total_exp` BIGINT NOT NULL DEFAULT 0,

       `rank` INT NOT NULL DEFAULT 0,

       `contribute_count` INT NOT NULL DEFAULT 0,

       PRIMARY KEY (`user_id`)

)

COLLATE='utf8mb4_unicode_ci';

in HeidiSQL

 

Complete!