3 song SERIAL PRIMARY KEY,
4 title VARCHAR NOT NULL,
5 artist VARCHAR NOT NULL
8 CREATE TABLE songratings (
9 song INTEGER NOT NULL REFERENCES songs,
10 playmode VARCHAR NOT NULL CHECK playmode IN ('single','double'),
11 difficulty VARCHAR NOT NULL CHECK difficulty IN ('beginner','standard','difficult','expert','challenge'),
12 feetrating INTEGER NOT NULL CHECK (feetrating >= 0 AND feetrating <= 10)
14 PRIMARY KEY (song, playmode, difficulty)
17 CREATE TABLE players (
18 player SERIAL PRIMARY KEY,
22 CREATE TABLE seasons (
23 season SERIAL PRIMARY KEY,
27 CREATE TABLE tournament (
28 tournament SERIAL PRIMARY KEY,
29 season INTEGER NOT NULL REFERENCES seasons,
34 tournament INTEGER NOT NULL REFERENCES tournaments,
35 level INTEGER NOT NULL,
36 parallel INTEGER NOT NULL
38 PRIMARY KEY (tournament, level, parallel)
41 CREATE TABLE roundparticipation (
42 tournament INTEGER NOT NULL,
43 level INTEGER NOT NULL,
44 parallel INTEGER NOT NULL,
45 player INTEGER NOT NULL REFERENCES players,
47 FOREIGN KEY ( tournament, level, parallel ) REFERENCES rounds ( tournament, level, parallel ),
48 PRIMARY KEY ( tournament, level, parallel, player )