1 CREATE TYPE ULEVEL
AS ENUM ('Highschool', 'Undergraduate', 'Master', 'Doctorate', 'Other');
2 CREATE TYPE PLEVEL
AS ENUM ('beginner', 'easy', 'medium', 'hard');
3 CREATE TYPE GENERATOR
AS ENUM ('File', 'Run', 'Undef');
4 CREATE TYPE RUNNER
AS ENUM ('File', 'Verifier', 'Interactive');
5 CREATE TYPE JUDGE
AS ENUM ('Absolute', 'Points');
9 name TEXT, -- NOT NULL,
10 email
TEXT, -- NOT NULL,
11 phone
TEXT, -- NOT NULL,
12 town
TEXT, -- NOT NULL,
13 university
TEXT, -- NOT NULL,
14 level TEXT, --ULEVEL NOT NULL,
18 CREATE TABLE contests (
23 owner TEXT NOT NULL REFERENCES users
,
24 CONSTRAINT positive_duration
CHECK (stop
> start)
27 CREATE TABLE problems (
30 generator GENERATOR
NOT NULL,
32 level PLEVEL
NOT NULL,
35 owner TEXT NOT NULL REFERENCES users
,
36 private
BOOLEAN NOT NULL DEFAULT FALSE,
37 runner RUNNER
NOT NULL,
38 statement TEXT NOT NULL,
41 timeout
REAL NOT NULL,
47 CREATE TABLE contest_problems (
48 contest
TEXT REFERENCES contests
,
49 problem
TEXT NOT NULL REFERENCES problems
,
50 PRIMARY KEY (contest
, problem
)
54 id SERIAL
PRIMARY KEY,
55 contest
TEXT REFERENCES contests
,
59 extension
TEXT NOT NULL,
61 private
BOOLEAN NOT NULL DEFAULT FALSE,
62 problem
TEXT NOT NULL REFERENCES problems
,
67 owner TEXT NOT NULL REFERENCES users
71 contest
TEXT NOT NULL REFERENCES contests
,
72 problem
TEXT NOT NULL REFERENCES problems
,
73 owner TEXT NOT NULL REFERENCES users
,
75 PRIMARY KEY (contest
, problem
, owner)
This page took 0.023004 seconds and 4 git commands to generate.