From a0407f43bb47d2844e6e9893b18430d925ff46c8 Mon Sep 17 00:00:00 2001 From: Dominic Grimm Date: Sat, 5 Feb 2022 14:40:51 +0100 Subject: [PATCH] Merged database migrations --- .../20220120165102_create_users.sql | 15 ------- .../20220120165204_create_user_roles.sql | 15 ------- .../20220120165453_create_votes.sql | 27 ----------- ..._externals.sql => 20220205143534_init.sql} | 45 +++++++++++++++---- 4 files changed, 37 insertions(+), 65 deletions(-) delete mode 100644 docker/backend/db/migrations/20220120165102_create_users.sql delete mode 100644 docker/backend/db/migrations/20220120165204_create_user_roles.sql delete mode 100644 docker/backend/db/migrations/20220120165453_create_votes.sql rename docker/backend/db/migrations/{20220120165316_create_user_externals.sql => 20220205143534_init.sql} (52%) diff --git a/docker/backend/db/migrations/20220120165102_create_users.sql b/docker/backend/db/migrations/20220120165102_create_users.sql deleted file mode 100644 index 20db9ff..0000000 --- a/docker/backend/db/migrations/20220120165102_create_users.sql +++ /dev/null @@ -1,15 +0,0 @@ --- +micrate Up --- SQL in section 'Up' is executed when this migration is applied -CREATE TABLE users( - id BIGSERIAL PRIMARY KEY, - firstname TEXT NOT NULL, - lastname TEXT NOT NULL, - email TEXT NOT NULL, - PASSWORD TEXT NOT NULL, - blocked BOOLEAN NOT NULL, - UNIQUE (firstname, lastname, email) -); - --- +micrate Down --- SQL section 'Down' is executed when this migration is rolled back -DROP TABLE users; \ No newline at end of file diff --git a/docker/backend/db/migrations/20220120165204_create_user_roles.sql b/docker/backend/db/migrations/20220120165204_create_user_roles.sql deleted file mode 100644 index 206ab11..0000000 --- a/docker/backend/db/migrations/20220120165204_create_user_roles.sql +++ /dev/null @@ -1,15 +0,0 @@ --- +micrate Up --- SQL in section 'Up' is executed when this migration is applied -CREATE TYPE user_roles AS ENUM ('Admin', 'Teacher', 'Student'); - -ALTER TABLE - users -ADD - COLUMN role user_roles NOT NULL; - --- +micrate Down --- SQL section 'Down' is executed when this migration is rolled back -ALTER TABLE - users DROP COLUMN role; - -DROP TYPE user_roles; \ No newline at end of file diff --git a/docker/backend/db/migrations/20220120165453_create_votes.sql b/docker/backend/db/migrations/20220120165453_create_votes.sql deleted file mode 100644 index d7bc4d0..0000000 --- a/docker/backend/db/migrations/20220120165453_create_votes.sql +++ /dev/null @@ -1,27 +0,0 @@ --- +micrate Up --- SQL in section 'Up' is executed when this migration is applied -CREATE TABLE votes( - id BIGSERIAL PRIMARY KEY, - student_id BIGINT NOT NULL UNIQUE REFERENCES students(id) -); - -ALTER TABLE - students -ADD - COLUMN vote_id BIGINT UNIQUE REFERENCES votes(id); - -CREATE TABLE teacher_votes( - id BIGSERIAL PRIMARY KEY, - vote_id BIGINT NOT NULL REFERENCES votes(id), - teacher_id BIGINT NOT NULL REFERENCES teachers(id), - priority INT NOT NULL -); - --- +micrate Down --- SQL section 'Down' is executed when this migration is rolled back -ALTER TABLE - students DROP COLUMN vote_id; - -DROP TABLE teacher_votes; - -DROP TABLE votes; \ No newline at end of file diff --git a/docker/backend/db/migrations/20220120165316_create_user_externals.sql b/docker/backend/db/migrations/20220205143534_init.sql similarity index 52% rename from docker/backend/db/migrations/20220120165316_create_user_externals.sql rename to docker/backend/db/migrations/20220205143534_init.sql index bbdd107..375c9f1 100644 --- a/docker/backend/db/migrations/20220120165316_create_user_externals.sql +++ b/docker/backend/db/migrations/20220205143534_init.sql @@ -1,5 +1,18 @@ -- +micrate Up -- SQL in section 'Up' is executed when this migration is applied +CREATE TYPE user_roles AS ENUM ('Admin', 'Teacher', 'Student'); + +CREATE TABLE users( + id BIGSERIAL PRIMARY KEY, + firstname TEXT NOT NULL, + lastname TEXT NOT NULL, + email TEXT NOT NULL, + PASSWORD TEXT NOT NULL, + role user_roles NOT NULL, + blocked BOOLEAN NOT NULL, + UNIQUE (firstname, lastname, email) +); + CREATE TABLE admins( id BIGSERIAL PRIMARY KEY, user_id BIGINT NOT NULL UNIQUE REFERENCES users(id) @@ -33,19 +46,35 @@ ALTER TABLE ADD COLUMN student_id BIGINT UNIQUE REFERENCES students(id); +CREATE TABLE votes( + id BIGSERIAL PRIMARY KEY, + student_id BIGINT NOT NULL UNIQUE REFERENCES students(id) +); + +ALTER TABLE + students +ADD + COLUMN vote_id BIGINT UNIQUE REFERENCES votes(id); + +CREATE TABLE teacher_votes( + id BIGSERIAL PRIMARY KEY, + vote_id BIGINT NOT NULL REFERENCES votes(id), + teacher_id BIGINT NOT NULL REFERENCES teachers(id), + priority INT NOT NULL +); + -- +micrate Down -- SQL section 'Down' is executed when this migration is rolled back -ALTER TABLE - users DROP COLUMN admin_id; +DROP TABLE teacher_votes; -ALTER TABLE - users DROP COLUMN teacher_id; - -ALTER TABLE - users DROP COLUMN student_id; +DROP TABLE votes; DROP TABLE admins; DROP TABLE teachers; -DROP TABLE students; \ No newline at end of file +DROP TABLE students; + +DROP TABLE users; + +DROP TYPE user_roles; \ No newline at end of file