forked from saplinganon/imissfauna.com
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathinit_postgres.sql
36 lines (31 loc) · 940 Bytes
/
init_postgres.sql
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
CREATE TABLE IF NOT EXISTS config (
name TEXT PRIMARY KEY,
val TEXT
);
CREATE TABLE IF NOT EXISTS cached_stream_info (
video_link TEXT PRIMARY KEY,
status INT,
title TEXT,
thumbnail TEXT,
start_time DOUBLE PRECISION,
members_only BOOLEAN,
type INT,
last_check_time DOUBLE PRECISION
);
CREATE TABLE IF NOT EXISTS vod (
video_link TEXT PRIMARY KEY,
title TEXT,
thumbnail TEXT,
uploaded_date DOUBLE PRECISION,
length_seconds INT,
members_only BOOLEAN,
_last_valid DOUBLE PRECISION
);
CREATE MATERIALIZED VIEW IF NOT EXISTS vod_count AS SELECT COUNT(0) AS num_vods FROM vod;
CREATE OR REPLACE FUNCTION update_vod_count() RETURNS trigger LANGUAGE plpgsql AS
$$ BEGIN
REFRESH MATERIALIZED VIEW vod_count;
RETURN null;
END $$;
CREATE TRIGGER update_vod_count_trigger AFTER INSERT OR DELETE OR TRUNCATE ON vod
FOR EACH STATEMENT EXECUTE PROCEDURE update_vod_count();