Added support for profiling. Removed the pkg module altogether. Everything except old sync is now using code generated by sqlc.
44 lines
1.1 KiB
SQL
44 lines
1.1 KiB
SQL
CREATE TABLE game (
|
|
id serial4 NOT NULL,
|
|
game_name varchar NOT NULL,
|
|
added timestamp NOT NULL,
|
|
deleted timestamp NULL,
|
|
last_changed timestamp NULL,
|
|
"path" varchar NOT NULL,
|
|
times_played int4 DEFAULT 0 NULL,
|
|
last_played timestamp NULL,
|
|
number_of_songs int4 NULL,
|
|
hash varchar NULL,
|
|
CONSTRAINT game_pkey PRIMARY KEY (id)
|
|
);
|
|
|
|
CREATE TABLE song (
|
|
game_id int4 NOT NULL,
|
|
song_name varchar NOT NULL,
|
|
"path" varchar NOT NULL,
|
|
times_played int4 DEFAULT 0 NULL,
|
|
hash varchar NULL,
|
|
file_name varchar NULL,
|
|
CONSTRAINT song_pkey PRIMARY KEY (game_id, path)
|
|
);
|
|
|
|
CREATE TABLE vgmq (
|
|
song_no int4 NOT NULL,
|
|
"path" varchar(50) NULL,
|
|
clue varchar(200) NULL,
|
|
answered bool DEFAULT false NOT NULL,
|
|
answer varchar(50) NULL,
|
|
CONSTRAINT vgmq_pk PRIMARY KEY (song_no)
|
|
);
|
|
CREATE UNIQUE INDEX vgmq_song_no_uindex ON vgmq USING btree (song_no);
|
|
|
|
CREATE TABLE song_list (
|
|
match_date date NOT NULL,
|
|
match_id int4 NOT NULL,
|
|
song_no int4 NOT NULL,
|
|
game_name varchar(50) NULL,
|
|
song_name varchar(50) NULL,
|
|
CONSTRAINT song_list_pkey PRIMARY KEY (match_date, match_id, song_no)
|
|
);
|
|
CREATE INDEX song_list_game_name_idx ON song_list USING btree (game_name);
|