canape/sql/migration/0003_torrents.up.sql
2017-01-03 12:41:39 +00:00

31 lines
1.0 KiB
SQL

CREATE TABLE torrents_abstract (
id uuid PRIMARY KEY DEFAULT gen_random_uuid(),
imdb_id text NOT NULL,
url text NOT NULL,
source text NOT NULL,
quality text NOT NULL,
upload_user text NOT NULL,
seeders integer NOT NULL,
leechers integer NOT NULL,
LIKE base INCLUDING DEFAULTS
);
CREATE TABLE movie_torrents (
)
INHERITS (torrents_abstract);
CREATE TABLE episode_torrents (
season integer NOT NULL,
episode integer NOT NULL
)
INHERITS (torrents_abstract);
CREATE INDEX ON movie_torrents (imdb_id);
CREATE UNIQUE INDEX ON movie_torrents (imdb_id, source, quality);
CREATE INDEX ON episode_torrents (imdb_id);
CREATE UNIQUE INDEX ON episode_torrents (imdb_id, season, episode, source, quality);
CREATE INDEX ON torrents_abstract (imdb_id);
CREATE TRIGGER update_movie_torrents_updated_at BEFORE UPDATE ON movie_torrents FOR EACH ROW EXECUTE PROCEDURE update_updated_at_column();
CREATE TRIGGER update_episode_torrents_updated_at BEFORE UPDATE ON episode_torrents FOR EACH ROW EXECUTE PROCEDURE update_updated_at_column();