Files
SWA-database/init/00_InitDB.sql

38 lines
1.1 KiB
SQL

DROP TABLE IF EXISTS Users;
DROP TABLE IF EXISTS Posts;
DROP TABLE IF EXISTS Reaction;
CREATE TABLE Users
(
id bigserial PRIMARY KEY,
username varchar(255) NOT NULL,
password varchar(255) NOT NULL,
deleted timestamp WITH TIME ZONE default NULL
);
CREATE TABLE Posts
(
id bigserial PRIMARY KEY,
author bigserial REFERENCES Users(id) NOT NULL,
title varchar(255) NOT NULL,
content varchar(1023) NOT NULL,
postDate timestamp WITH TIME ZONE NOT NULL DEFAULT now(),
postLocation Point NOT NULL,
deleted timestamp WITH TIME ZONE default NULL
);
CREATE TABLE Answers (
id bigserial PRIMARY KEY,
parent bigserial REFERENCES Posts NOT NULL,
child bigserial REFERENCES Posts NOT NULL,
deleted timestamp WITH TIME ZONE default NULL
);
CREATE TABLE Reaction
(
id bigserial PRIMARY KEY,
post bigserial REFERENCES Posts(id) NOT NULL,
positive boolean DEFAULT NULL,
deleted timestamp WITH TIME ZONE default NULL
)