1
0
Fork 0

feat: add initial migration

This commit is contained in:
Vojtěch Mareš 2024-04-28 15:26:04 +02:00
parent c340623721
commit c877fa0d2c
Signed by: vojtech.mares
GPG key ID: C6827B976F17240D
2 changed files with 58 additions and 0 deletions

View file

@ -0,0 +1,50 @@
BEGIN;
CREATE SCHEMA IF NOT EXISTS training;
CREATE TABLE IF NOT EXISTS training.trainings (
id UUID PRIMARY KEY,
name varchar(255) NOT NULL,
description text NOT NULL,
days smallint NOT NULL,
price decimal NOT NULL
);
CREATE TABLE IF NOT EXISTS training.dates (
id UUID PRIMARY KEY,
training_id UUID NOT NULL,
date date NOT NULL,
start_time time NOT NULL,
days smallint NOT NULL,
price decimal NOT NULL,
is_online boolean NOT NULL,
location varchar(255) NOT NULL,
address varchar(255) NOT NULL,
capacity smallint NOT NULL,
FOREIGN KEY (training_id) REFERENCES training.trainings(id)
);
CREATE TABLE IF NOT EXISTS training.attendees (
id UUID PRIMARY KEY,
date_id UUID NOT NULL,
name varchar(255) NOT NULL,
email varchar(255) NOT NULL,
company varchar(255) NOT NULL,
role varchar(255) NOT NULL,
is_student boolean NOT NULL,
has_attended boolean NOT NULL,
has_paid boolean NOT NULL,
FOREIGN KEY (date_id) REFERENCES training.dates(id)
);
CREATE TABLE IF NOT EXISTS training.feedback (
id UUID PRIMARY KEY,
attendee_id UUID NOT NULL,
rating smallint NOT NULL,
comment text NOT NULL,
is_anonymous boolean NOT NULL,
is_sharing_allowed boolean NOT NULL,
FOREIGN KEY (attendee_id) REFERENCES training.attendees(id)
);
COMMIT;