# Pastebin ESN6nh4x CREATE TEMP TABLE spotify_cache_album ( id INTEGER GENERATED ALWAYS AS IDENTITY NOT NULL, spotify_id TEXT NOT NULL, name TEXT NOT NULL, type TEXT NOT NULL, release_date TEXT NOT NULL, last_refresh TIMESTAMP WITH TIME ZONE NOT NULL, expires_at TIMESTAMP WITH TIME ZONE NOT NULL, data JSONB NOT NULL ); CREATE TEMP TABLE spotify_cache_artist ( id INTEGER GENERATED ALWAYS AS IDENTITY NOT NULL, spotify_id TEXT NOT NULL, name TEXT NOT NULL, data JSONB NOT NULL ); CREATE UNIQUE INDEX spotify_cache_artist_uniq_idx ON spotify_cache_artist (spotify_id, name); -- use name in unique idx for now because we don't know how spotify handles track credits CREATE TEMP TABLE spotify_cache_track ( id INTEGER GENERATED ALWAYS AS IDENTITY NOT NULL, spotify_id TEXT NOT NULL, name TEXT NOT NULL, track_number INTEGER NOT NULL, album_id TEXT NOT NULL, data JSONB NOT NULL ); CREATE TEMP TABLE rel_album_artist ( id INTEGER GENERATED ALWAYS AS IDENTITY NOT NULL, album_id TEXT NOT NULL, artist_id TEXT NOT NULL ); CREATE TEMP TABLE rel_track_artist ( id INTEGER GENERATED ALWAYS AS IDENTITY NOT NULL, track_id TEXT NOT NULL, artist_id TEXT NOT NULL );