● Zion Boggan
repos/Drophawk/backend/migrations/20260101000005_watchlist.sql
zionboggan.com ↗
16 lines · sql
History for this file →
1
CREATE TABLE watchlist (
2
    id          BIGSERIAL PRIMARY KEY,
3
    kind        TEXT NOT NULL CHECK (kind IN ('artist','team','venue','sport','category','keyword','twitter_account')),
4
    pattern     TEXT NOT NULL,
5
    label       TEXT NOT NULL CHECK (length(label) BETWEEN 1 AND 128),
6
    active      BOOLEAN NOT NULL DEFAULT TRUE,
7
    priority    TEXT NOT NULL DEFAULT 'normal' CHECK (priority IN ('low','normal','high','critical')),
8
    created_at  TIMESTAMPTZ NOT NULL DEFAULT NOW(),
9
    updated_at  TIMESTAMPTZ NOT NULL DEFAULT NOW(),
10
    UNIQUE (kind, pattern)
11
);
12
 
13
CREATE INDEX idx_watchlist_active_kind ON watchlist(active, kind);
14
CREATE TRIGGER watchlist_set_updated_at
15
    BEFORE UPDATE ON watchlist
16
    FOR EACH ROW EXECUTE FUNCTION set_updated_at();