create table application (
    current_process integer not null,
    deleted bit not null,
    deadline datetime(6),
    id bigint not null auto_increment,
    recruitment_id bigint,
    user_id bigint,
    career_requirement varchar(255),
    company_name varchar(255),
    contact varchar(255),
    duty varchar(255),
    employment_type enum ('INTERN','PERMANENT','TEMPORARY'),
    job_description varchar(255),
    location varchar(255),
    position varchar(255),
    preferred_qualification varchar(255),
    required_capability varchar(255),
    team varchar(255),
    url varchar(255),
    work_type varchar(255),
    primary key (id)
);

create table application_process (
    orders integer,
    application_id bigint not null,
    id bigint not null auto_increment,
    schedule datetime(6),
    description varchar(255),
    type enum ('COMPLETE','DOCUMENT','INTERVIEW','TEST','TO_APPLY') not null,
    primary key (id)
);

create table recruitment (
    deleted bit not null,
    deadline datetime(6),
    id bigint not null auto_increment,
    career_requirement varchar(255),
    company_name varchar(255),
    contact varchar(255),
    duty varchar(255),
    employment_type enum ('INTERN','PERMANENT','TEMPORARY'),
    job_description varchar(255),
    location varchar(255),
    position varchar(255),
    preferred_qualification varchar(255),
    required_capability varchar(255),
    team varchar(255),
    url varchar(255),
    work_type varchar(255),
    primary key (id)
);

create table recruitment_process (
    orders integer not null,
    id bigint not null auto_increment,
    recruitment_id bigint not null,
    schedule datetime(6),
    description varchar(255),
    type enum ('COMPLETE','DOCUMENT','INTERVIEW','TEST','TO_APPLY') not null,
    primary key (id)
);

create table users (
    id bigint not null auto_increment,
    email varchar(255),
    provider enum ('GOOGLE','KAKAO'),
    role enum ('ADMIN','GUEST','USER'),
    primary key (id)
);

alter table application 
   add constraint FKp6pay5d5qymslgxs3d7ukepib 
   foreign key (recruitment_id) 
   references recruitment (id);

alter table application_process 
   add constraint FK5s39s34uwiixsk40xorpvqkt 
   foreign key (application_id) 
   references application (id);

alter table recruitment_process 
   add constraint FK52wdp6yo4y20195jhxjf7w1y6 
   foreign key (recruitment_id) 
   references recruitment (id);